科特林范围
在 Kotlin 中,范围是由端点定义的有限值的集合。 Kotlin 中的范围由开始、停止和步骤组成。 Range 中包含 start 和 stop,step 的值默认为 1。
该范围与可比较的类型一起使用。
在 Kotlin 中创建 Range 有三种方法:
- 使用(..)运算符
- 使用rangeTo()函数
- 使用downTo()函数
(..)运算符
这是使用范围的最简单方法。它将创建一个从开始到结束的范围,包括开始和结束的值。它是 rangeTo()函数的运算符形式。使用 (..)运算符,我们可以为整数和字符创建范围。
使用 (..)运算符的整数范围 Kotlin 程序 –
fun main(args : Array){
println("Integer range:")
// creating integer range
for(num in 1..5){
println(num)
}
}
输出:
Integer range:
1
2
3
4
5
使用 (..)运算符的字符范围 Kotlin 程序 –
fun main(args : Array){
println("Character range:")
// creating character range
for(ch in 'a'..'e'){
println(ch)
}
}
输出:
Character range:
a
b
c
d
e
rangeTo()函数
它类似于 (..)运算符。它将创建一个范围,直到作为参数传递的值。它还用于为整数和字符创建范围。
使用 rangeTo()函数的整数范围 Kotlin 程序 -
fun main(args : Array){
println("Integer range:")
// creating integer range
for(num in 1.rangeTo(5)){
println(num)
}
}
输出:
Integer range:
1
2
3
4
5
使用 rangeTo()函数的字符范围的 Kotlin 程序 –
fun main(args : Array){
println("Character range:")
// creating character range
for(ch in 'a'.rangeTo('e')){
println(ch)
}
}
输出:
Character range:
a
b
c
d
e
downTo()函数
它与 rangeTo() 或 (..)运算符相反。它按降序创建一个范围,即从较大的值到较小的值。下面我们以相反的顺序为整数和字符创建范围。
使用 downTo()函数的整数范围 Kotlin 程序 –
fun main(args : Array){
println("Integer range in descending order:")
// creating integer range
for(num in 5.downTo(1)){
println(num)
}
}
输出:
Integer range in descending order:
5
4
3
2
1
使用 downTo()函数的字符范围的 Kotlin 程序 –
fun main(args : Array){
println("Character range in reverse order:")
// creating character range
for(ch in 'e'.downTo('a')){
println(ch)
}
}
输出:
Character range in reverse order:
e
d
c
b
a
使用 forEach 循环的范围 -
forEach 循环也用于遍历范围。
fun main(args : Array){
println("Integer range:")
// creating integer range
(2..5).forEach(::println)
}
输出:
Integer range:
2
3
4
5
步()
使用关键字step ,可以提供值之间的步长。它主要用于在 rangeTo() 或 downTo() 或 (..)运算符中提供两个值之间的差距。 step 的默认值为 1,step 函数的值不能为 0。
Kotlin 程序的使用步骤——
fun main(args: Array) {
//for iterating over the range
var i = 2
// for loop with step keyword
for (i in 3..10 step 2)
print("$i ")
println()
// print first value of the range
println((11..20 step 2).first)
// print last value of the range
println((11..20 step 4).last)
// print the step used in the range
println((11..20 step 5).step)
}
输出:
3 5 7 9
11
19
5
反转函数()
它用于反转给定的范围类型。我们可以使用 reverse()函数代替 downTo() 以降序打印范围。
fun main(args: Array) {
var range = 2..8
for (x in range.reversed()){
print("$x ")
}
}
输出:
8 7 6 5 4 3 2
范围内的一些预定义函数-
Kotlin Range 中有一些预定义的函数:min()、max()、sum()、average()。
fun main() {
val predefined = (15..20)
println("The minimum value of range is: "+predefined.min())
println("The maximum value of range is: "+predefined.max())
println("The sum of all values of range is: "+predefined.sum())
println("The average value of range is: "+predefined.average())
}
输出:
The minimum value of range is: 15
The maximum value of range is: 20
The sum of all values of range is: 105
The average value of range is: 17.5
检查一个值是否在一个范围内?
fun main(args: Array)
{
var i = 2
//to check whether the value lies in the range
if( i in 5..10)
println("$i is lie within the range")
else
println("$i does not lie within the range")
}
输出:
2 does not lie within the range
在评论中写代码?请使用 ide.geeksforgeeks.org,生成链接并在此处分享链接。