- 區(qū)間表示:.. 閉區(qū)間订雾、until 半閉半開區(qū)間。
downTo降續(xù)閉區(qū)間读存、step跨度步長。- 使用 in 和 !in 關(guān)鍵字
一呕屎、.. 让簿、until 區(qū)間
- 在kotlin語言中,閉區(qū)間采用區(qū)間運算符(..)表示榨惰,而半開區(qū)間則需要使用中綴運算符 until 表示拜英。
for (x in 0..5) {
print("$x, ") // 定義閉區(qū)間,包括0和5
}
for (x in 0 until 5) {
print("$x, ") // 定義半開區(qū)間琅催,包括0但不含5
}
for (x in 'A'..'E') {
print("$x, ") // 定義閉區(qū)間居凶,包括A和E
}
for (x in 'A' until 'E') {
print("$x, ") // 定義半開區(qū)間,包括A但不含E
}
結(jié)果:
0, 1, 2, 3, 4, 5,
0, 1, 2, 3, 4,
A, B, C, D, E,
A, B, C, D,
-
補充內(nèi)容:
downTo 表示降續(xù)閉區(qū)間藤抡;step 表示跨度步長侠碧。
(5 downTo 1).joinToString(", ").run(::println)
(1..10 step 3).joinToString(", ").run(::println)
結(jié)果:
5, 4, 3, 2, 1
1, 4, 7, 10
- 數(shù)組的
indices
返回數(shù)組的索引區(qū)間
intArrayOf(1, 2, 3, 4, 5).indices.forEach(::println)
運行結(jié)果:
0
1
2
3
4
二、使用 in 和 !in 關(guān)鍵字
使用 in 關(guān)鍵字可以判斷一個數(shù)值是否在區(qū)間中缠黍,而 !in 關(guān)鍵字則是判斷一個值是否不在區(qū)間中弄兜。此外,這兩個個關(guān)鍵字 (in 和 !in) 還可以判斷一個數(shù)值是否在集合或數(shù)組中瓷式。
var testScore = 80
var grade = when (testScore) {
in 90..100 -> "優(yōu)"
in 90..100 -> "良"
in 90..100 -> "中"
in 90..100 -> "差"
else -> "無"
}
println("Grade = " + grade)
if (testScore !in 60..100) {
println("不及格")
}