文書   >   Swift   >   Array   >   init(_:)


汎用イニシャライザ


init(_:)


シーケンスの要素を含む配列を作成します。





宣言


init<S>(_ s: S) where Element == S.Element, S : Sequence


パラメータ


s配列に変換すべき要素のシーケンス。


議論


このイニシャライザを使用して、Sequence プロトコルに準拠している任意の他の型から配列を作成できます。たとえば、1 から 7 までの整数で配列を作成したいと思うかもしれません。配列リテラルにすべての数字をタイプするのではなく、このイニシャライザを範囲の周りで使用してください。


let numbers = Array(1...7)
print(numbers)
// Prints "[1, 2, 3, 4, 5, 6, 7]"


このイニシャライザを使って複雑なシーケンスやコレクション型を配列に戻すこともできます。たとえば、辞書の keys プロパティは、独自の記憶領域を持つ配列ではなく、アクセス時にのみ辞書から要素をマッピングするコレクションであり、配列の割り当てに必要な時間とスペースを節約します。ただし、これらのキーを、配列をとるメソッドに渡す必要がある場合は、このイニシャライザを使用して、そのリストを LazyMapCollection<Dictionary<String, Int>, Int> の型から単純な [String] に変換します。


func cacheImagesWithNames(names: [String]) {
    // custom image loading and caching
 }

let namedHues: [String: Int] = ["Vermillion": 18, "Magenta": 302,
        "Gold": 50, "Cerise": 320]
let colorNames = Array(namedHues.keys)
cacheImagesWithNames(colorNames)

print(colorNames)
// Prints "["Gold", "Cerise", "Magenta", "Vermillion"]"


関連





プロトコルから


RangeReplaceableCollection


以下も見よ





配列の作成





目次
Xcode の新機能

  • SDK
  • Xcode 9.0+
  • フレームワーク
  • Swift 標準ライブラリ

  • 宣言
  • パラメータ
  • 議論
  • 関連
  • 以下も見よ












  • トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)












    トップへ(Foundation)