【Android】 Kotlin的初尝试(和java的异同) - 附代码

  • Kotlin语言作为google推荐的安卓开发语言,了解并使用它是基本的安卓开发学习的必经之路。
  • 今天就先简单了解一下kotlin的语法特点和基本使用,无非可就是变量,函数,对象等等的使用。
package com.chris.firstproject

import kotlin.math.max
//初步学习使用kotlin语言
//kotlin是没有用分号以做结束的
fun main(args: Array<String>){
    println("Hello My First Kotlin File")
    var a = 10
    println(a+2)
    //Kotlin 是不需要加上分号的;var和val是不一样的概念
    val num : Int = 1340 // 显性对象,和java中的基础数据不一样,在kotlin中是大写的,以对象进行应用的
    //function 使用
    println(chooseLargeNumber(a,num))//也可以采用简化的语法糖进行缩写
    var big : Int = whichIsBigger(a,41)
    println(big)
    var bigNumber : Int = findBigNumber(a,num)
    println(bigNumber)
    var bigNum : Int = findBigNumberUseIf(a,num)
    println(bigNum)
    //学生成绩-when的使用
    println(getStudentScore("Tom"))
    //is 的用法
    println(checkNumberType(0.23))
    //循环的语法
    printfOneToTen()
    printfOneToNineUseTheKeyWordUntil()
    useKeyWordStepToPrint()
    useKeyWordDownToPrint()
}



/**
 * Function 方法和函数的使用
 */
fun whichIsBigger(a: Int, num: Int): Int  = max(a, num)//简化写法,语法糖

fun chooseLargeNumber(a: Int, num: Int) : Int{
    return max(a,num)
}

/**
 * if逻辑操作
 */
fun findBigNumberUseIf(a: Int, num: Int): Int {
//在kotlin中if是可以有返回值的
    val i = if (a > num) a else num
    return i
    //甚至可以直接return if的值
//    return if (a > num) a else num
}

//采用if逻辑操作
fun findBigNumber(a: Int, num: Int): Int {
    if(a > num){
        return a
    }else{
        return num
    }
}


/**
 *when的使用
 */
// 学生成绩的简单方法
fun getStudentScore(s: String): Int {
    when(s) {
        "Tom" ->  return 89
        "Marry" -> return 100
        "Jerry" ->return 67
        "Chris" -> return 99
    }
    return -1
}
// 关键词is的应用,相当于instanceOf

fun  checkNumberType(num : Number) {
    when (num){
        is Int -> println("Number is Int")
        is Long -> println("Number is Long")
        is Double -> println("Number is Double")
        else -> println("Number is Unsupported")
    }
}

/**
 * 学习使用循环逻辑,其中的While使用和java的基本一致;
 * for的使用就比较大的区别
 */
//使用循环,这里和Java语言的区别就在于可以使用..代表闭区间;
fun printfOneToTen(){
    for ( i in 1..10){
        print(i)
    }
    println()
}
//单端闭区间 需要使用关键词 until
fun printfOneToNineUseTheKeyWordUntil(){
    for( i in 1 until 10){
        print(i)
    }
    println()
}
// 使用关键词step,类似java中的i++
fun useKeyWordStepToPrint(){
    for( i in 0 until 10 step 2){
        print(i)
    }
    println();
}
//也可降序,采用关键词downTo
fun useKeyWordDownToPrint(){
    for( i in 10 downTo 1 step 3){
        print(i)
    }
    println()
}


代码运行的结果:
【Android】 Kotlin的初尝试(和java的异同) - 附代码

上一篇:Kotlin 协程四 —— Flow 和 Channel 的应用


下一篇:6-1 函数求值 (100 分)