美文网首页
循环控制

循环控制

作者: Green_Apple | 来源:发表于2017-09-01 09:33 被阅读0次

package xuhuankongzhi
//----------------for循环------------
//for循环可以对任何提供迭代器的(iterator)的对象进行遍历
/*fun main(args: Array<String>) {
val collection=setOf(1,2,3,1) //set集合不重复
for(item in collection)println(item)

//循环体可以是一个代码块
val ints=IntArray(3){i->i};
for(item:Int in ints)println(item)

//for可以循环遍历任何提供迭代器的对象
//若需要通过索引遍历也是可疑z的  ints.indices (即是数组的索引下标)
for(i in ints.indices)println(ints[i])

//注意这种在区间上遍历会编译成优化的实现而不会创建额外的对象
//或者可以使用库函数。withIndex  返回(下标,数值)的键值对
for((index,value)in ints.withIndex())println("the element at $index is $value")

}*/

//------------while 和 do..while-----------------------
/*
传统和java一样的使用

*/

//---------------返回和跳转-----------------
/*
Kotlin有三种结构化台哦转表达式
return 默认从最直接保卫他的函数或者匿名函数返回
break 终止直接包围它的循环
continue 继续下一次的直接包裹的循环
Kotlin 支持传统java的使用

Break 和Continue标签
在Kotlin中,任何表达式都可以用标签(label)来标记
标签格式为标识符后跟@符号

break 跳转到位于该标签制定的循环后面的执行点
continue 继续标签制定的continue的循环的下一次迭代

*/

/*fun main(args: Array<String>) {
loop@ for( i in 1..100)
for(j in 1..100){
println(j)
if(j==2) break@loop
}
//loop 执行点 break跳转后
}
*/

//-----------------标签处返回---------------
/*
Kotlin 有函数字面量、局部和对象表达式
因此Kotlin函数可以被嵌套,标签限制的return 允许我们从外层函数返回
最重要的一个用途是从lambda表达式中返回
*/
fun main(args: Array<String>) {
val ints=arrayOf(1,2,3,4)
fun foo(){

    ints.forEach lit@{
        if(it==2)return@lit
            print(it)
        }
    //隐式,与lambda的函数名相同
    ints.forEach {
        if(it==2)return@forEach
            print(it)
        }
    //匿名函数代替lambda表达式,匿名函数内部return将从该匿名函数自身返回

}

fun foo2(){
    ints.forEach(fun(value:Int){
        if(value==0)return
        print(value)
    }) 
}


foo()
foo2()

//return @a 1
//当返回一个值的时候,解析器优先选用标签限制的return
// 意为从标签@a 1 而不是返回一个标签标注的表达式

}

相关文章

  • 20170824 Shell编程进阶(一)

    选择执行:if语句条件判断:case语句循环控制:for语句循环控制:while语句和until语句循环控制:co...

  • 控制流程

    控制流程 本节包含内容: For循环 While循环 条件语句 控制转移语句 For循环 for循环用来按照指定的...

  • Python——控制语句

    Python控制语句 循环(loop)控制 循环的最基本语法 for循环 语法 rangerange(起始,范围,...

  • 控制循环

    1.break语句 终止当前循环语句break语句后面接着的编码没有用。 2.continue语句 跳过当前的循环...

  • 循环控制

    [if !supportLists]1.[endif]求1+4+7+……+100之和。(1717) [if !su...

  • 循环控制

    package xuhuankongzhi//----------------for循环------------/...

  • 循环控制

    for-in循环 使用 for-in 循环来遍历序列,比如一个范围的数字,数组中的元素或者字符串中的字符。 当字典...

  • 循环控制

    break语句 使用break语句跳出当前循环体,从而中断当前循环 例题 使用break跳出循环 在嵌套的循环中使...

  • 循环控制

    是否无线循环吗?for(;;){ }答案:是

  • 4.3 程序的循环结构

    四、程序的控制结构 4.3 程序的循环结构 遍历循环 无限循环 循环控制保留字 循环的高级用法 遍历循环 遍历某个...

网友评论

      本文标题:循环控制

      本文链接:https://www.haomeiwen.com/subject/xcehjxtx.html