区间定义

  1. /*---------------------------- 定义1到100 ----------------------------*/
  2. val range1 = 1..100
  3. 1 until 100 //[1,100)
  4. val range2 = IntRange(1,100)
  5. val range3 = 1.rangeTo(100)
  6. /*---------------------------- 长整形区间 ----------------------------*/
  7. val range4 = 1L..100L
  8. val range5 = LongRange(1L,100L)
  9. val range6 = 1L.rangeTo(100L)
  10. /*---------------------------- 字符区间 ----------------------------*/
  11. val range7 = 'a'..'z'
  12. val range8 = CharRange('a','z')
  13. val range9 = 'a'.rangeTo('z')

区间遍历

val range = 1..100
    /*---------------------------- for ----------------------------*/
//    for (i in range) {
//        println(i)
//    }
//    for ((index,i) in range.withIndex()) {
//        println("index=$index i=$i")
//    }
    /*---------------------------- foreach ----------------------------*/
//    range.forEach {
//        println(it)
//    }
    range.forEachIndexed { index, i ->
        println("index=$index i=$i")
    }

反向区间和区间反转

/*---------------------------- 反向区间 ----------------------------*/
    //定义100到1的区间
    val range = 100 downTo 1
//    range.forEach {
//        println(it)
//    }
    /*---------------------------- 区间反转 ----------------------------*/
    val range1 = 1..100
    val range2 = range1.reversed()
//    range2.forEach {
//        println(it)
//    }
    for (i in range2 step 5) {
        println(i)
    }