Caution
お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。
typealias / 型エイリアス
『typealias』は既存の型に別名(エイリアス)を付ける機能で、コードの可読性を高めたり複雑な型を簡潔に表現するために使います。
構文
typealias 新しい型名 = 既存の型
主な基本型一覧
| 型 | 概要 |
|---|---|
| Int | 整数型です。64ビット環境では-9,223,372,036,854,775,808〜9,223,372,036,854,775,807の範囲を扱えます。 |
| Double | 64ビット浮動小数点数型です。小数点以下の精度が必要な計算に使います。 |
| Float | 32ビット浮動小数点数型です。Doubleより精度は低いですがメモリを節約できます。 |
| Bool | 真偽値型です。『true』または『false』の2値を持ちます。 |
| String | 文字列型です。Unicode文字を格納します。 |
| Character | 1文字を表す型です。 |
サンプルコード
// 基本的な使い方
typealias UserID = Int
typealias UserName = String
let id: UserID = 1001
let name: UserName = "太郎"
print("ID: \(id), 名前: \(name)")
// クロージャ型に別名を付ける
typealias CompletionHandler = (Bool, String) -> Void
func fetchData(completion: CompletionHandler) {
// データ取得処理(ここでは省略)
completion(true, "データ取得成功")
}
fetchData { success, message in
print("成功: \(success), メッセージ: \(message)")
}
// 複雑なタプル型に別名を付ける
typealias Coordinate = (x: Double, y: Double)
let tokyo: Coordinate = (x: 139.69, y: 35.68)
print("東京の座標: (\(tokyo.x), \(tokyo.y))")
概要
『typealias』は新しい型を作るのではなく、既存の型に別名を付けるだけです。そのため、元の型とエイリアスは完全に互換性があり、どちらも同じ場所で使用できます。
クロージャの型定義は記述が長くなりがちですが、『typealias』で名前を付けることで可読性が大きく向上します。また、意味のある名前を付けることでコードの意図が伝わりやすくなります(例:『Int』よりも『UserID』の方が役割が明確です)。
クロージャについてはクロージャの基本も参照してください。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。