swift --version
Apple Swift version 3.1 (swiftlang-802.0.53 clang-802.0.42)
Target: x86_64-apple-macosx10.9
区間 in Swift
区間 | 型 | オペレーター |
---|---|---|
半開区間 [start, end) | Range<Bound> | start ..< end |
閉区間 [start, end] | ClosedRange<Bound> | start ... end |
NOTE
- Int型における ..< オペレーターはデフォルトではCountableRange<Int>になるので注意
- CountableRange<Bound>は、Rangeというサフィックスが付いているが、区間というよりSequenceと考えたほうが実用的
- Collectionのsubscriptメソッドで受け取る型はRange<Bound>
区間の定義
- 開区間
- 両端を含まない
- ( )で囲む
ex: (0,1) = 0より大きく、1未満
- 閉区間
- 両端を含む
- [ ]で囲む
ex: [0,1] = 0以上、1以下
- 半開区間
- どちらか一方を含む
- 始端を含む場合 [ )で囲む
ex: [0, 1) = 0以上、1未満 - 終端を含む場合 ( ]で囲む
ex: (0, 1] = 0より大きく、1以下
参照