Android-Kotlin简单计算器功能

上一篇博客 Android-Kotlin-配置/入门 配置好了 AndroidStudio Kotlin 的环境;

 

选择包名,然后右键:

Android-Kotlin简单计算器功能

选择Class类型,会有class:

Android-Kotlin简单计算器功能

创建CounterClass:

package cn.kotlin.kotlin_oop02

/**
 * 加减乘除计算的calss
 * var number1:Double 此Double是kotlin的
 * var operapor:Char  此Char是kotlin的
 */
class CounterClass(var number1:Double, var operapor:Char, var number2:Double) {

    fun onCount() {

        // 注意:?? 在真实开发者 只需要写if等方式判断 加减乘除就好了,我是为了使用when,所以才做了if判断,又做了when判断
        var whenFlag:Int = 0;
        if (operapor.equals(‘+‘)) {
            whenFlag = 1
        } else if (operapor.equals(‘-‘)) {
            whenFlag = 2
        } else if (operapor.equals(‘*‘)) {
            whenFlag = 3
        } else if (operapor.equals(‘/‘)) {
            whenFlag = 4;
        }

        /**
         * when可以理解为Java的switch,只是语法不同
         */
        var result:Double = 0.0;

        when(whenFlag){
            1 -> {
                result = number1 + number2;
            }
            2 -> {
                result = number1 - number2;
            }
            3 -> {
                result = number1 * number2;
            }
            4 -> {
                result = number1 / number2;
            }
            else -> {
                println("${operapor}法运算过程中失败!")
                return // 失败就不完下执行了,方法结束
            }
        }
        showResult(result)
    }

    /**
     * 此方法打印计算结果
     * 设置private私有,不给外面其他地方访问调用,资格本类中使用,这属于封装的一种体现
     */
    private fun showResult(result:Double) {
        println("${operapor}计算的结果是:${result}");
    }

}

 

 

选择包名,然后右键:

Android-Kotlin简单计算器功能

 选择File类型,不会自动有class:

 Android-Kotlin简单计算器功能

创建测试的main方法:

package cn.kotlin.kotlin_oop02

fun main(args: Array<String>) {

    //
    var c = CounterClass(9.0, ‘+‘, 9.0)
    c.onCount();

    //
    CounterClass(100.0, ‘-‘, 50.0).onCount()

    //
    CounterClass(10.0, ‘*‘, 10.0).onCount()

    //
    CounterClass(100.0, ‘/‘, 2.0).onCount()
}

 

执行结果:

Android-Kotlin简单计算器功能

 

Android-Kotlin简单计算器功能

上一篇:锤子科技"临死前"被"接盘" ,内部人士爆料已改签今日头条母公司


下一篇:XMind: ZEN 快捷键