鱼C论坛

 找回密码
 立即注册
查看: 3795|回复: 2

[技术交流] kotlin 基础之循环语句与判断表达式

[复制链接]
发表于 2017-11-15 08:55:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
fun main(args: Array<String>) {
    var i=0
    var j=0
    while(i<10){
        i++
        print(i)
    }
    println()
    println("---------------一条分割线----------------")
    do {
        j++
        print(j)
    }while (j<10)
}
while(){}和do{}while()语句,跟其他语言都差不多,输出结果为:
12345678910
---------------一条分割线----------------
12345678910



下面说一下for循环,这跟别的语言的区别是在判断里可以用in表达式和区间,例如:
var list= listOf("小甲鱼","不二如是","风介","康小泡")
    for (i in list){
        println(i)
    }
    println()
    for(i in 1..10){
        print(i)
    }
输出结果为:
小甲鱼
不二如是
风介
康小泡

12345678910
在1和10之间放两个点就是一个区间,使用这个非常方便,而且还可以转换为列表,如:
var arrayList=(0..100).toList()
    print(arrayList)
输出结果为:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]

区间也可以是字母,如:
for(i in 'a'..'z'){
        print(i)
    }
输出结果为:
abcdefghijklmnopqrstuvwxyz

if判断表达式跟其他语言的区别是有返回值,如:
var a="a"
    var b="b"
    var d=if (a is String){
        var c=a.plus(b)
        c
    }else{
        ""
    }
    print(d)
这个代码的意思就是如果a的类型是字符串,那就返回字符串a+b的值,如果不是就返回个空字符串。注意:只有大括号里的最后一行才能作为返回值,
输出结果为:
ab


接着介绍when表达式,在别的语言里相似的有switch语句,kotlin把switch改成了when表达式,这种更简便好用,他同样也有返回值,例如:
 val str:String?=null
    val num:Int?=10
    val a=when(num){
        in 1..10-> "the number equal $num"
        else->"the number is not in this array"
    }
    val b=when{
        str==null-> "str is empty"
        else->""
    }
    println(a)
    println(b)
输出结果:
the number equal 10
str is empty

评分

参与人数 2荣誉 +10 鱼币 +10 贡献 +8 收起 理由
chun888 + 5 + 5 + 3 鱼C有你更精彩^_^
不二如是 + 5 + 5 + 5 期待~

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-11-15 10:09:37 | 显示全部楼层
排版有进步~~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-3-16 13:45:57 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-23 05:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表