閉じた範囲と半開範囲
ループやスライスで...と..<を正しく使用します。
「閉じた範囲と半開範囲」はCoddyKit上の無料Swift Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSwift Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Swift Academyコースには全4レッスンが含まれています。
範囲とは
範囲は、下限と上限の間にある値の並びを表します。Swift には、このための主な範囲演算子が2つあります。
let r = 1...5
for n in r {
print(n)
}閉区間
閉区間演算子 a...b は、両方の端点を含みます。1...5 には 1、2、3、4、5 が含まれます。
for n in 1...5 {
print(n)
}半開区間
半開区間演算子 a..<b は下限を含みますが、上限を含みません。0..<5 には 0、1、2、3、4 が含まれます。
for n in 0..<5 {
print(n)
}半開区間がよく使われる理由
半開区間は、個数やインデックスと非常に相性がよい仕組みです。0..<array.count を使うと、有効なすべてのインデックスをちょうど1回ずつ訪問できます。
let items = ["a", "b", "c"]
for i in 0..<items.count {
print("\(i): \(items[i])")
}範囲には count がある
範囲には、count プロパティを通じて、その範囲に含まれる値の個数が記録されています。
let closed = 1...5
let halfOpen = 0..<5
print(closed.count)
print(halfOpen.count)所属の確認
contains を使うと、値が範囲内にあるかどうかを確認できます。
let valid = 1...100
print(valid.contains(50))
print(valid.contains(0))
print(valid.contains(101))下限と上限
すべての範囲には、lowerBound と upperBound プロパティがあります。
let r = 10...20
print(r.lowerBound)
print(r.upperBound)空の範囲と1要素の範囲
5..<5 のような半開区間は空になります。閉区間は両端を含むため、空にはなりません。
let empty = 5..<5
print(empty.isEmpty)
let single = 5...5
print(single.count)switch での範囲
範囲は switch の case パターンとして使うことができ、値を区分に分類できます。
let score = 73
switch score {
case 0..<60:
print("Fail")
case 60...100:
print("Pass")
default:
print("Invalid")
}境界の順序を守る
下限は上限を超えてはいけません。5...1 と書くと実行時にクラッシュするため、境界は順序どおりに指定してください。
let lo = 2
let hi = 8
if lo <= hi {
for n in lo...hi {
print(n)
}
}反復回数を数える
インデックスを使わずに何かを N 回だけ繰り返したい場合は、_ と範囲を組み合わせて使用してください。
var total = 0
for _ in 1...4 {
total += 10
}
print(total)確認問題
閉区間と半開区間を試してみましょう。
まとめ:閉区間と半開区間
a...b は両端を含み、a..<b は上端を含まず、個数やインデックスと自然に組み合わせられます。範囲は count、contains、境界の各プロパティをサポートしています。
for i in 0..<3 { print(i) }AI チューターと学ぶ Swift — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 122
- レッスン
- 409
よくある質問
「閉じた範囲と半開範囲」レッスンは無料ですか?
はい。「閉じた範囲と半開範囲」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Swift Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Swift Academyコースには全4レッスンが含まれています。
「閉じた範囲と半開範囲」で何を学びますか?
ループやスライスで...と..<を正しく使用します。 ブラウザで直接実行するハンズオンコードでSwift Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Swift Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのSwift Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。
「閉じた範囲と半開範囲」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このSwift Academyレッスンでコードを書いて実行できますか?
はい。すべてのSwift Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。