Kotlin笔记(二)--循环控制语句.md

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

if

除了和Java一样的用法,if分支还可以作为表达式使用

var str=if(){	
		....
	}
esle if(){
		.....
}else{
	.....	
}

整个分支最后会有一个返回值,代码块中最后一个表达式的值即为整个分支的返回值;
注意:

  1. 由于分支必须有返回值,所以必须有else分支,而else if为可选分支;
  2. 如果只是if…else分支,就变成了Java中的三目运算

When

Kotlin中When分支替代了Java中的Switch语句

格式:

When(条件表达式){//条件表达式的类型没有任何要求,可以使任意类型

'分支值1' ->{}	// 分支的值不要求常是量,可以是任意表达式
'分支值2'->{}
'分支3','分支4' ->{}

.........

else{} 




}
  1. 条件表达式的类型没有任何要求,可以使任意类型
  2. 分支的值不要求常是量,可以是任意表达式
  3. 分支可以匹配多个值

如:

2、When分支作为表达式

和If分支一样,When分支也可以作为表达式,当某个分支符合条件,那么该分支的整个代码块的值就作为整个表达式的值,如果代码块没有明确return返回值,最后一条语句即为分支返回值;

var str=when(条件表达式){
			'分支1'->{}
				.....
			else{
				
				}	
	

	}

***注意:***由于作为表达式必须返回值,所以必须有else分支

2.1、when分支处理范围

检查表达式是否位于指定区间和集合

如:

	var age:Int=25;
	when(age){
    in 0..18 ->{
        Log.d("TAG","未成年人")
    }
    in 19..30 ->{
        Log.d("TAG","年轻人")

    }

}

2.2、when分支处理条件表达式类型

通过is、!is运算符判断,表达式类型是否是指定类型
when(){
is 类型(如:String)->{}

	.....
	}

2.3、when分支取代if…else if

通过对when分支变形既可做的if…else if…的作用:

  1. 不提供条件表达式

  2. 分支为布尔表达式

     when{
     	布尔表达式->{}
     	布尔表达式->{}
    
     .......
     }
    

3、while与do while循环

和Java一样,不做介绍

for…in循环

专门用于遍历区间、集合、字符串等包含元素。

格式:

for(常量名  in 字符串|区间|集合){



	}
  1. 常量不需要声明,常量会在每次循环开始是自动被赋值
  2. for…in可以遍历任何可迭代对象。所谓可迭代对象就是包含一个iterator()方法,且该方法返回值具有next()方法、hasNext()方法,这三个方法都是使用operator修饰;

猜你喜欢

转载自blog.csdn.net/Leslie_LN/article/details/82783075