kotlin入门-一个简单的加减乘除计算器例子

这篇博客介绍了一个使用Kotlin编写的简单计算器应用,用户可以输入加减乘除表达式,如1+2、1/2等。文章通过示例展示了计算器如何处理正确和错误的输入,并提供了交互式的体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package com.bigen.test

/**
 * Created by jeffeng on 2018-5-25.
 */
fun main(args: Array<String>) {
    loop@ while (true) {
        println("=======输入计数表达式==========")
        //进行表达式输入
        var _input = readLine()
        try {
            //得到表达式的计算结果
            var _result = result(_input!!)
            println("${_input}=${_result}")
            println("是否继续使用(y/n)")
            var _go = readLine()
            when (_go) {
                "n" -> System.exit(-1) //退出程序
                else -> continue@loop
            }
        } catch (e: NumberFormatException) {
            println("ERROR:您输入的表达式有误")
        }
    }
}

fun result(exp: String): String {
    when {
    exp.contains("+") -> {
        return Calculator(exp.trim().split("+")[0].toDouble(), exp.trim().split("+")[1].toDouble(), "+").toString()
    }
    exp.contains("-") -> {
        return Calculator(exp.trim().split("-")[0].toDouble(), exp.trim().split("-")[1].toDouble(), "-").toString()
    }
    exp.contains("*") -> {
        return Calculator(exp.trim().split("*")[0].toDouble(), exp.trim().split("*")[1].toDouble(), "*").toString()
    }
    exp.contains("/") -> {
        return Calculator(exp.trim().split("/")[0].toDouble(), exp.trim().split("/")[1].toDouble(), "/").toString()
    }
    else -> return "ERROR:您输入的表达式有误"
    }
}


var Calculator = fun(x: Double, y: Double, operater: String): Double {
    when (operater) {
        "+" -> return x + y
        "-" -> return x - y
        "*" -> return x * y
        "/" -> return x / y
        else -> return 0.0
    }

}





输入类似的表达式:例如计算加法,输入1+2 然后回车,除法1/2以此类推

=======输入计数表达式==========
1+2
1+2=3.0
是否继续使用(y/n)
y
=======输入计数表达式==========
1-2
1-2=-1.0
是否继续使用(y/n)
y
=======输入计数表达式==========
1*2
1*2=2.0
是否继续使用(y/n)
y
=======输入计数表达式==========
1/2
1/2=0.5
是否继续使用(y/n)
y
=======输入计数表达式==========
1rrt4
1rrt4=ERROR:您输入的表达式有误
是否继续使用(y/n)
y
=======输入计数表达式==========
1+++5
ERROR:您输入的表达式有误
=======输入计数表达式==========

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值