当前位置:网站首页>Android 开发用 Kotlin 编程语言三 循环控制
Android 开发用 Kotlin 编程语言三 循环控制
2022-08-05 10:52:00 【AaVictory.】
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
边栏推荐
- 机器学习-基础知识 - Precision, Recall, Sensitivity, Specificity, Accuracy, FNR, FPR, TPR, TNR, F1 Score, Bal
- 负载均衡应用场景
- 上位机开发C#语言:模拟STC串口助手接收单片机发送数据
- The century-old Nordic luxury home appliance brand ASKO smart wine cabinet in the three-temperature area presents the Chinese Valentine’s Day, and tastes the love of the delicacy
- Chapter 5: Activiti process shunting judgment, judging to go to different task nodes
- DocuWare平台——文档管理的内容服务和工作流自动化的平台详细介绍(下)
- 第四章:activiti流程中,变量的传递和获取流程变量 ,设置和获取多个流程变量,设置和获取局部流程变量「建议收藏」
- 一个栈的输入序列为1 2 3 4 5 的出站顺序的理解
- 【综合类型第 35 篇】程序员的七夕浪漫时刻
- Go compilation principle series 6 (type checking)
猜你喜欢
E-sports, convenience, efficiency, security, key words for OriginOS functions
【加密解密】明文加密解密-已实现【已应用】
今天告诉你界面控件DevExpress WinForms为何弃用经典视觉样式
产品太多了,如何实现一次登录多产品互通?
用KUSTO查询语句(KQL)在Azure Data Explorer Database上查询LOG实战
SQL Outer Join Intersection, Union, Difference Query
金融业“限薪令”出台/ 软银出售过半阿里持仓/ DeepMind新实验室成立... 今日更多新鲜事在此...
双因子与多因子身份验证有什么区别?
《分布式云最佳实践》分论坛,8 月 11 日深圳见
HDD杭州站•ArkUI让开发更灵活
随机推荐
秘乐短视频挖矿系统开发详情
如何测试一下现场的备机失败,转发主机的场景?
Go编译原理系列6(类型检查)
Ali's new launch: Microservices Assault Manual, all operations are written out in PDF
poj2287 Tian Ji -- The Horse Racing(2016xynu暑期集训检测 -----C题)
A small test of basic grammar, Go lang1.18 introductory refining tutorial, from Bai Ding to Hongru, basic grammar of go lang and the use of variables EP02
数分面试(一)----与业务相关
发现C语言的乐趣
L2-042 老板的作息表
用KUSTO查询语句(KQL)在Azure Data Explorer Database上查询LOG实战
产品太多了,如何实现一次登录多产品互通?
trie树模板
使用Windbg过程中两个使用细节分享
Three methods for extracting facial features
【 temperature warning program DE development 】 event driven model instance
How to choose coins and determine the corresponding strategy research
The fuse: OAuth 2.0 four authorized login methods must read
导火索:OAuth 2.0四种授权登录方式必读
拓朴排序例题
lvgl 实现状态提示图标自动对齐补位显示