当前位置:网站首页>Kotlin流程控制、循环
Kotlin流程控制、循环
2022-07-05 12:32:00 【好奇的菜鸟】
一、流程控制
1.if
val i = 1
if (i > 0) {
print("Big")
} else {
print("Small")
}
使用if,赋值。
val i = 1
val message = if (i > 0) "Big" else "Small"
print(message)
fun getLength(text: String?): Int {
return if (text != null) text.length else 0
}
上边的简写,Elvis 表达式;
fun getLength(text: String?): Int {
return text?.length ?: 0
}
2.when
val i: Int = 1
when(i) {
1 -> print("一")
2 -> print("二")
else -> print("i 不是一也不是二")
}
val i: Int = 1
val message = when(i) {
1 -> "一"
2 -> "二"
else -> "i 不是一也不是二" // 如果去掉这行,会报错
}
print(message)
二、循环
1、for
val oneToThree = 1..3
for (i in oneToThree) {
println(i)
}
for (i in 6 downTo 0 step 3) {
println(i)
}
for (i in 0..10) {
println(i) //012345678910
}
for (i in 0 until 10) {
println(i) //0123456789
}
for (i in 0..10 step 2) {
print(i) //0 2 4 6 8 10
}
//获取元素
var abc = listOf("a", "b", "c")
for (i in abc) {
print(i)
}
// 获取下标
for (index in abc.indices) {
print("$index") // 0 1 2
}
// 获取元素和下标
for ((index, value) in abc.withIndex()) {
print("$index:$value ") //0:a 1:b 2:c
}
2、while
var i = 0
while (i <= 2) {
println(i)
i++
}
var j = 0
do {
println(j)
j++
} while (j <= 2)
边栏推荐
- MySQL multi table operation
- Learn the memory management of JVM 02 - memory allocation of JVM
- 手机 CPU 架构类型了解
- About cache exceptions: solutions for cache avalanche, breakdown, and penetration
- 16 channel water lamp experiment based on Proteus (assembly language)
- ZABBIX agent2 monitors mongodb nodes, clusters and templates (official blog)
- 只是巧合?苹果 iOS16 的神秘技术竟然与中国企业 5 年前产品一致!
- Knowledge representation (KR)
- UNIX socket advanced learning diary - advanced i/o functions
- Understand redis persistence mechanism in one article
猜你喜欢
Intern position selection and simplified career development planning in Internet companies
Redis highly available sentinel mechanism
Redis's memory elimination mechanism, read this article is enough.
Detailed structure and code of inception V3
Storage Basics
Tabbar configuration at the bottom of wechat applet
Master the new features of fluent 2.10
Principle of universal gbase high availability synchronization tool in Nanjing University
Learn memory management of JVM 01 - first memory
How can beginners learn flutter efficiently?
随机推荐
信息服务器怎么恢复,服务器数据恢复怎么弄[通俗易懂]
Making and using the cutting tool of TTF font library
Ecplise development environment configuration and simple web project construction
Array cyclic shift problem
Redis highly available slice cluster
只是巧合?苹果 iOS16 的神秘技术竟然与中国企业 5 年前产品一致!
Why learn harmonyos and how to get started quickly?
How to clear floating?
[superhard core] is the core technology of redis
MySQL trigger
Matlab imoverlay function (burn binary mask into two-dimensional image)
ZABBIX ODBC database monitoring
ZABBIX agent2 monitors mongodb nodes, clusters and templates (official blog)
Pytoch monolayer bidirectional_ LSTM implements MNIST and fashionmnist data classification
Acid transaction theory
MySQL index - extended data
MySQL view
Learning items
The relationship between the size change of characteristic graph and various parameters before and after DL convolution operation
Principle and performance analysis of lepton lossless compression