kotlin的循环使用

kotlin的循环使用


1.For循环

在kotlin中也有for循环可是和咱们在Java中的是用是不同的 在Java咱们最多见的使用:函数

Java代码
for(int i=0 ; i < list.size() ; i++){
//...
}
复制代码

可是在kotlin中 这样使用时错误的 由于在kotlin中不能这样使用。 在kotlin中能够是用区间表达式来完成以上的功能 以下:spa

kotlin代码
for(i in 0..list.size){
//..
}
  
for(i in 0..10){
//..
}
for (i in 0 until 10){
//..
}
在这里 until 是和".."是等价的 
复制代码

这样就能够完成以上功能了 这是从0到list.size迭代。 在kotlin中不仅能够从低到高的迭代也能够从高到低迭代 以下:code

kotlin代码
for(i in 10 downTo 0){
//...
}
复制代码

这段代码是从10 到0 的迭代 在kotlin中不仅能够这样 还能够设置每次迭代的间隔 以下:对象

kotlin代码
for(i in 0..20 step 2){
    print(i)
}
打印结果为:02468101214161820
复制代码

能够看出 每次迭代都加了2源码

在kotlin中还专门为咱们提供了一个循环方法“repeat()” 使用方法以下:it

repeat(10){
    print(it)
}
打印结果:0123456789
复制代码

这个方法提供了一个循环 经过查看源码发现这个方法你面实现是 一个for循环 源码以下:io

public inline fun repeat(times: Int, action: (Int) -> Unit) {
contract { callsInPlace(action) }

for (index in 0 until times) {
    action(index)
}
}
复制代码

能够看到这就是封装了一个for循环。for循环

在kotlin中 for循环能够对任何提供了迭代器(iterator)的对象进行遍历,这至关于C#这样的语言中的foreach循环。语法以下:class

for(item in collection) print(item)
或
for(item:Int in Ints){
//...
}
复制代码

如上所述,for能够循环遍历任何提供了迭代器的对象。即:扩展

  • 有一个成员函数或扩展函数iterator(),它的返回类型;
  • 有一个成员函数或扩展函数next();
  • 有一个成员函数或扩展函数hasNext()返回Boolean.

这三个函数都须要标记 operator

2.while 循环

在kotlin中 while循环和在Java中是同样的 以下:

while(x>0){
 x--
}

do{
y++
}while(y>10)
复制代码
相关文章
相关标签/搜索