final String[] items = new String[]{“apple”,“banana”,“kiwi”};
for(String item:items){
System.out.println(item);
}1234
or
final String[] items = new String[]{“apple”,“banana”,“kiwi”};
int size = items.size;
for(int i = 0;i<size;i++){
System.out.printlin(String.format(“item at %d is %s”,i,items[i]));
}12345
8.while循环
Kotlin在用while循环与Java无任何区别。
9.范围检查
Kotlin相对于Java简化了数据范围检测的写法。如下:
1.检查数据是否在数值范围内
val x = 10
val y = 9
if (x in 1…y+1) {
println(“fits in range”)
}12345
对应Java代码
final x = 10;
final y =9;
if(x>=1&&x<=y+1){
System.out.println(“fits in range”);
}12345
2.检查数据是否在数值范围外
val list = listOf(“a”, “b”, “c”)
if (-1 !in 0…list.lastIndex) {
println("-1 is out of range")
}
if (list.size !in list.indices) {
println(“list size is out of valid list indices range too”)
}12345678
对应Java代码
final Array list = Arrays.asList(“a”,“b”,“c”);
if(-1 < 0||-1 > list.size()-1){
System.out.println("-1 is out of range");
}
if(list.size()<0||list.size()>list.size()-1){
System.out.println(“list size is out of valid list indices range too”);
}1234567
通过上面的对比,Kotlin的代码效率就体现出来了。
3.遍历数值范围
for (x in 1…5) {
print(x)
}123
对应的Java代码
for(int i=0;i<=5;i++){
System.out.print(x+"");
}123
4.步进遍历数值范围
for (x in 1…10 step 2) {
print(x)
}
println()
for (x in 9 downTo 0 step 3) {
print(x)
}1234567
对应的Java代码
int x;
for(x = 1;x<=10;x+=2){
System.out.print(x+"");
}
System.out.print("\n");
for(x=9;x>=0;x-=3){
System.out.print(x+"");
}12345678
通过对比,Kotlin的代码简洁性又体现出来了。
10.when表达式
when表达式是Kotlin新增的用于多情况的取值判定。来见识一下他的威力:
fun describe(obj:Any):String =
when(obj){
1 -> “One”
“Hello” -> “Greeting”
is Long -> “Long”
!is String -> “isn’t String”
else -> “Unknown”
}12345678
对应的Java代码:
String describe(Object obj){
if(obj instanceof Integer && (int)obj =