Kotlin实战指南四:区间
生活随笔
收集整理的這篇文章主要介紹了
Kotlin实战指南四:区间
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
轉載請標明出處:https://blog.csdn.net/zhaoyanjun6/article/details/87866868
本文出自【趙彥軍的博客】
Kotlin初體驗四:區間
- 區間
- 實用函數
區間
區間表達式由具有操作符形式 … 的 rangeTo 函數輔以 in 和 !in 形成。 區間是為任何可比較類型定義的,但對于整型原生類型,它有一個優化的實現。以下是使用區間的一些示例:
if (i in 1..10) { // 等同于 1 <= i && i <= 10println(i) }整型區間(IntRange、 LongRange、 CharRange)有一個額外的特性:它們可以迭代。 編譯器負責將其轉換為類似 Java 的基于索引的 for-循環而無額外開銷:
for (i in 1..4) print(i)如果你想倒序迭代數字呢?也很簡單。你可以使用標準庫中定義的 downTo() 函數:
for (i in 4 downTo 1) print(i)能否以不等于 1 的任意步長迭代數字? 當然沒問題, step() 函數有助于此:
for (i in 1..4 step 2) print(i)for (i in 4 downTo 1 step 2) print(i)要創建一個不包括其結束元素的區間,可以使用 until 函數:
for (i in 1 until 10) {// i in [1, 10) 排除了 10println(i) }實用函數
rangeTo //升序區間 downTo() //降序區間 reversed() //翻轉區間 step() //步長實例演練
var a = 0.rangeTo(10) //相當于 0..10var b = 10.downTo(0) //相當于 10..0 b = b.reversed() //翻轉區間 var b = 10.downTo(0).step(3)請注意,返回數列的 last 值可能與原始數列的 last 值不同,以便保持不變式 (last - first) % step == 0 成立。這里是一個例子:
(1..12 step 2).last == 11 // 值為 [1, 3, 5, 7, 9, 11] 的數列 (1..12 step 3).last == 10 // 值為 [1, 4, 7, 10] 的數列 (1..12 step 4).last == 9 // 值為 [1, 5, 9] 的數列個人微信號:zhaoyanjun125 , 歡迎關注
總結
以上是生活随笔為你收集整理的Kotlin实战指南四:区间的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Kotlin实战指南三:流程控制
- 下一篇: Kotlin实战指南五:继承、接口