0Pricing
Swift Academy · レッスン

リテラルの型推論

リテラルをIntにするかDoubleにするかを制御します。

「リテラルの型推論」はCoddyKit上の無料Swift Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSwift Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Swift Academyコースには全4レッスンが含まれています。

リテラルのデフォルト型

各種のリテラルにはデフォルトの推論型があります。整数は Int、浮動小数点数は Double、テキストは String、true/falseは Bool になります。

let i = 5
let d = 5.0
let s = "5"
let b = true
print(type(of: i), type(of: d), type(of: s), type(of: b))

let x = 5 は Int

小数点のない整数リテラルからは、プラットフォームのデフォルト整数型である Int が常に推論されます。

let x = 5
print(type(of: x))
print(x + 1)

let y: Double = 5

Double と注釈すると、同じリテラル 5 を浮動小数点値にできます。

let y: Double = 5
print(type(of: y))
print(y / 2)

小数点でDoubleになる

5.0 と書くと、型注釈なしで Double が推論されます。

let z = 5.0
print(type(of: z))
print(z * 2)

IntとDoubleは混在できない

Swiftは数値型の間で暗黙的に変換しません。Int と Double を組み合わせるには、明示的に変換する必要があります。

let count = 3
let price = 1.5
let total = Double(count) * price
print(total)

FloatとDoubleの違い

小数のデフォルト型は Double です。より小さい32ビット型を明示的に使用したい場合は、Float と注釈してください。

let big = 3.14
let small: Float = 3.14
print(type(of: big), type(of: small))

整数型の型注釈

型注釈を付けると、デフォルトの Int ではなく、Int8 や UInt など、サイズを指定した整数型を選択できます。

let tiny: Int8 = 120
let unsigned: UInt = 9
print(type(of: tiny), type(of: unsigned))

StringとCharacterの違い

二重引用符で囲まれたリテラルからは String が推論されます。1文字を想定するコンテキストでは、型注釈によって Character を推論できます。

let word = "Swift"
let letter: Character = "S"
print(type(of: word), type(of: letter))

ブールリテラル

キーワード true と false からは Bool が推論されます。

let isReady = false
print(type(of: isReady))

式の中のリテラル

1つの式の中でリテラルが混在すると、Swiftは共通の型を選択します。1 + 2.0 では、整数リテラルが Double として扱われます。

let mixed = 1 + 2.0
print(mixed)
print(type(of: mixed))

型注釈でリテラルを適応させる

リテラル自体は柔軟であり、最終的な型は型注釈によって決まります。そのため、let y: Double = 5 は 5.0 と書かなくても機能します。

let a: Double = 7
let b: Float = 7
print(a, b)

確認テスト

リテラルの型推論をテストしてください。

まとめ

整数リテラルのデフォルトは Int、小数のデフォルトは Double です。: Double、: Float、: Int8、: Character などの型注釈を付けると、柔軟なリテラルの型を適応させてデフォルトを上書きできます。数値型が暗黙的に変換されることはありません。

let i = 5
let d: Double = 5
print(type(of: i), type(of: d))

よくある質問

「リテラルの型推論」レッスンは無料ですか?

はい。「リテラルの型推論」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Swift Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Swift Academyコースには全4レッスンが含まれています。

「リテラルの型推論」で何を学びますか?

リテラルをIntにするかDoubleにするかを制御します。 ブラウザで直接実行するハンズオンコードでSwift Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Swift Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのSwift Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。

「リテラルの型推論」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このSwift Academyレッスンでコードを書いて実行できますか?

はい。すべてのSwift Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 型推論の仕組み
  2. 明示的なアノテーションを追加するタイミング
  3. リテラルの型推論
  4. クロージャの型推論
← Swift Academyに戻る