0Pricing
Swift Academy · レッスン

型推論と明示的な型指定

Swiftが型を推論する仕組みと、型を明示的に宣言する場面を学びます。

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

ようこそ

Swiftは*静的型付け*言語です。すべての値は、コンパイル時に型が決まっています。ただし、Swiftが自動的に型を推論してくれるため、型を自分で書く必要はほとんどありません。

型推論とは

Swiftは右辺の値を調べ、型を自動的に推論します: ```swift let message = "Hello" // inferred as String let count = 42 // inferred as Int let price = 9.99 // inferred as Double ``` 型アノテーションは必要ありません。コンパイラが型を判断します。

明示的な型アノテーション

コロンを使って、型を明示的に指定することもできます: ```swift let message: String = "Hello" let count: Int = 42 let price: Double = 9.99 ``` 推論された型を使いたくない場合に便利です。

推論で望ましくない型が選ばれる場合

浮動小数点リテラルのデフォルトの型は`Double`です。`Float`が必要な場合は、明示的にアノテーションを付けます: ```swift let inferred = 3.14 // Double let explicit: Float = 3.14 // Float ``` 同様に、整数リテラルのデフォルトの型は`Int`です。`Int32`や`UInt8`などが必要な場合はアノテーションを付けます。

型安全性を実践する

一度型が決まると、別の型に変更することはできません: ```swift var score = 0 // Int score = "ten" // ❌ cannot assign String to Int ``` 型安全性により、この種類のバグを実行時よりずっと前のコンパイル時に検出できます。

type(of:)関数

実行時の型を調べるには`type(of:)`を使います: ```swift let value = 42 print(type(of: value)) // Int let name = "Alice" print(type(of: name)) // String ``` 型推論で予想外の型になった場合のデバッグに役立ちます。

型エイリアス

`typealias`を使うと、既存の型に新しい名前を付けて、コードの可読性を高められます: ```swift typealias Celsius = Double typealias UserID = Int var temperature: Celsius = 36.6 var userId: UserID = 1001 ``` 型エイリアスは見た目上の名前を変えるだけで、基になる型は変わりません。

初期化なしのアノテーション

初期値なしで変数を宣言する場合は、*必ず*型をアノテーションで指定します: ```swift var name: String // ✓ annotation required name = "Bob" var total: Int total = 0 ``` 値がない状態では、Swiftは型を推論できません。

数値リテラルと可読性

Swiftでは、可読性を高めるために数値リテラル内へアンダースコアを入れられます: ```swift let million = 1_000_000 let hex = 0xFF_EC_D3 let binary = 0b1111_0000 ``` アンダースコアはコンパイラに無視され、見た目を整える目的だけで使われます。

型変換 — 暗黙のキャストなし

Swiftは型の間で暗黙的な変換を行いません。明示的に変換する必要があります: ```swift let intVal: Int = 5 let dblVal: Double = Double(intVal) // explicit conversion let sum = Double(intVal) + 2.5 ``` これにより、意図しない数値の昇格による微妙なバグを防げます。

確認

`let x = 3.14`でSwiftが推論する型は何ですか?

まとめ

要点: • Swiftは初期値から型を推論するため、通常はアノテーションが不要です • 明示的なアノテーション(`: Type`)で推論を上書きできます • 浮動小数点数のデフォルトは`Double`、整数のデフォルトは`Int`です • 暗黙的な変換はなく、`Int()`や`Double()`などを使います • `type(of:)`で実行時の型を確認できます 次は、数値、Bool、Characterという基本型を学びます。

よくある質問

「型推論と明示的な型指定」レッスンは無料ですか?

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

「型推論と明示的な型指定」で何を学びますか?

Swiftが型を推論する仕組みと、型を明示的に宣言する場面を学びます。 ブラウザで直接実行するハンズオンコードでSwift Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

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

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

「型推論と明示的な型指定」レッスンにはどのくらい時間がかかりますか?

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

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

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

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

  1. letとvar:定数と変数
  2. 型推論と明示的な型指定
  3. 数値、ブール値、文字
  4. Stringの基礎と補間
← Swift Academyに戻る