关于java:Kotlin-区间

36次阅读

共计 1042 个字符,预计需要花费 3 分钟才能阅读完成。

Kotlin 区间

kotlin 中的区间在 Java 中是没有的,区间和数学中的 [] 相似

1. 创立一个区间

应用 ..

    val intRange = 1..10
    val charRange = 'a'..'z'
    val longRange = 1L..10L

2. 创立半开半闭区间

应用 until

        // 创立半开半闭区间
    // [1,10)
    val intRangeExclusive = 1 until 10
    val charRangeExclusive = 'a' until 'z'
    val longRangeExclusive = 1L until 10L

3. 创立 倒序 区间值(由大到小)

应用 downTo

        val intRangeReverse = 10 downTo 1
    val charRangeReverse = 'z' downTo 'a'  //z y x ....a
    val longRangeReverse = 100L downTo 1L

4. 创立区间时 应用步长

应用 step

    val intRangeWithStep = 1..10 step 2 // 1,3,5..
    val charRangeWithStep = 'a'..'z' step 2  
    val longRangeWithStep = 0L..100L step 10 //0L ,10L , 20L ..

5. 打印 输入区间

应用 joinToString() , 只能输入 离散型的区间,非离散型的区间没有此办法

  println(longRangeWithStep.joinToString())

非离散型区间 没有 joinToString 办法,因为这个区间无穷大

  val doubleRange = 0.1..2.0
    val floatRange = 1f..2f
  // doubleRange 没有 joinToString 办法 然而他们能够应用 if(in)

6. 迭代遍历区间

和数组一样应用 in 迭代

应用 until 实现 int i= 0 i < xx.size i++ 这种迭代

或者应用 数组的 indices 属性间接实现

    // 迭代  只能迭代离散型区间,如 floatRange / doubleRange 不行,然而他们能够应用 if(in)for(i in 0..10){println(i)
    }

    for(ele in longRangeReverse){println(ele)
    }

    val arrays = intArrayOf(1,3,5,7)
    for(i in 0 until arrays.size){println(arrays[i])
    }

    for(i in arrays.indices){println(arrays[i])
    }

欢送大家拜访 集体博客 Johnny 小屋
欢送关注集体公众号

正文完
 0