Kotlin基础(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_31743309/article/details/84562738

1.Hello Kotlin
2.kotlin的数据类型
4.字符串的拼接
5.条件控制
6.字符串的比较
7.kotlin的空值处理
8.when 表达式
9.循环for
10.集合list、map


1.Hello Kotlin

fun main(args: Array<String>) {
    println("Hello Kotlin")
}

2.kotlin的数据类型

类型 位宽度
Double 64
Float 32
Long 64
Int 32
Short 16
Byte 8

4.字符串的拼接

fun nameLength(name: String): String {
    return "Hello!$name,你的名字有${name.length}个字"
}

5.条件控制

fun main(args: Array<String>) {
    var a = 3
    var b = 5
    println("${a}${b}中的最大值是${returnBig(a, b)}")
}
fun returnBig(a: Int, b: Int): Int {
    return if (a > b) a else b
}

6.字符串的比较
//kotlin中的字符串"=="相当于java中的equals
//kotlin中的equals重载的方法第二个参数如果为true表示忽略大小写

    var str1 = "许可"
    var str2 = "许可"

    println(str1 == str2)               //true
    println(str1.equals(str2))          //true

    var str3 = "xuke"
    var str4 = "XuKe"

    println(str3 == str4)               //false
    println(str3.equals(str4, true))    //true

7.kotlin的空值处理
//kotlin中函数接收的参数默认是非空,如果再类型的后面加上"?"表示参数可以为空

fun main(args: Array<String>) {
    sayHello(null)                      //Hello!null
}

fun sayHello(name: String?) {
    println("Hello!$name")
}

8.when 表达式
//类似于java中的switch,但是更强大更简单

fun gradeStudent(score:Int){
    when (score) {
        10 -> println("满分")
        9 -> println("优秀")
        8 -> println("一般")
        7 -> println("还行")
        6 -> println("及格")
        else -> println("不及格")
    }
}
fun gradeStudentPrintln(score: Int): String {
    var print = when (score) {
        10 -> "满分"
        9 -> "优秀"
        8 -> "一般"
        7 -> "还行"
        6 -> "及格"
        else -> "不及格"
    }
    return print
}

9.循环for
//计算:1+2+3+…+100

fun main(args: Array<String>) {
    var nums = 1..100           //闭区间[1,100]
    var result = 0
    for (num in nums) {
        result += num
    }
    println("结果:$result")     //结果:5050
}

//计算:1+2+3+…+99

fun main(args: Array<String>) {
    var nums = 1 until 100      //开区间[1,100)
    var result = 0
    for (num in nums) {
        result += num
    }
    println("结果:$result")      //结果:4950
}

语法step 步长

    var nums2 = 1..10
    for (s in nums2 step 4){
        print("$s ")             //1 5 9
    }

方法reversed() 反转

    var nums2 = 1..10
    var nums3 = nums2.reversed()
    for (s in nums3){
        print("$s ")              //10 9 8 7 6 5 4 3 2 1
    }

方法count() 总数

    var nums2 = 1..10
    println("总数为:" + nums2.count())  //总数为:10

10.集合list、map

  • list
    遍历集合
    var lists = listOf("java", "android", "kotlin", "react native", "flutter", "javascript")
    for (list in lists) {
        print("$list ")
    }

输出:

java android kotlin react native flutter javascript ios

按照key value遍历

    for ((key, value) in lists.withIndex()) {
        println("$key -> $value")
    }

输出:

0 -> java
1 -> android
2 -> kotlin
3 -> react native
4 -> flutter
5 -> javascript
6 -> ios
  • map
    var map = TreeMap<String, String>()
    map["tenuous"] = "脆弱的,微弱的"
    map["carp"] = "抱怨,挑小毛病"
    map["nourish"] = "抚养,资阳,培养"
    println(map["carp"])       //抱怨,挑小毛病

猜你喜欢

转载自blog.csdn.net/qq_31743309/article/details/84562738