Android 开发用 Kotlin 编程语言三 循环控制

For 循环

for 循环可以对任何提供迭代器(iterator)的对象进行遍历,语法如下:

从0循环到100

  • 1、until关键字
    until关键字在使用时左侧和右侧都需要一个数值,until循环是一个左闭右开区间
for (index in 0 until 100) {
            println(index) 
        }
  • Android 测试
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        test()
    }
    fun test() {
        for (index in 0 until 100) {
            println(index)
        }
    }
}
  • 输出结果

0 1 2 … 99

  • in 正序遍历
for (index in 1..100){
            print(index)
        }
  • Android 测试
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        test()
    }
    fun test() {
        for (index in 1..100){
            print(index)
        }
    }
}


  • 输出结果

1 2 3 … 100

  • downTo()倒序遍历
    包含头和尾,并且按照倒序依次输出
for (index in 100 downTo 1){
            print(index)
        }
  • Android 测试
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        test()
    }
    fun test() {
        for (index in 100 downTo 1){
            print(index)
        }
    }
}
  • 输出结果

100 99 98 … 1

  • 奇数 隔一个数字
  for (index in 1..100 step 2){
            println(index)
        }
  • Android 测试
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        test()
    }
    fun test() {
        for (index in 1..100 step 2){
            println(index)
        }
    }
}
  • 输出结果

1 3 5 … 99

while 与 do…while 循环
while( 布尔表达式 ) {
  //循环内容
}
  • do…while 循环 对于 while 语句而言,如果不满足条件,则不能进入循环。但有时候我们需要即使不满足条件,也至少执行一次。

  • do…while 循环和 while 循环相似,不同的是,do…while 循环至少会执行一次。

do {
       //代码语句
}while(布尔表达式);
实例说明
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        test()
    }
    fun test() {
        println("----while 使用-----")
        var x = 5
        while (x > 0) {
            println( x--)
        }
        println("----do...while 使用-----")
        var y = 5
        do {
            println(y--)
        } while(y>0)

    }
}

  • 输出结果

----while 使用-----
5
4
3
2
1
----do…while 使用-----
5
4
3
2
1

返回和跳转

Kotlin 有三种结构化跳转表达式:

  • return。默认从最直接包围它的函数或者匿名函数返回。
  • break。终止最直接包围它的循环。
  • continue。继续下一次最直接包围它的循环。

在循环中 Kotlin 支持传统的 break 和 continue 操作符

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        test()
    }
    fun test() {
        for (i in 1..10) {
            if (i==3) continue  // i 为 3 时跳过当前循环,继续下一次循环
            println(i)
            if (i>5) break   // i 为 6 时 跳出循环
        }
    }
}
  • 输出结果

1 2 4 5 6

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AaVictory.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值