スウィフト配列
同じタイプの順序付けられたリストに格納された複数の値を使用して迅速アレイ。 同じ値は、配列内の異なる場所で複数回表示されることがあります。
力のスウィフトアレイは、異なる種類が指定されている場合、スウィフトアレイは、このような要素は、データ型のみが存在し、この配列に許可されている配列<要素>、としてフォームに従うべきである、要素の型を検出しました。
あなたは配列を作成し、変数に割り当てられた場合は、変更することができ、コレクションを作成します。 これは、配列を作成するとき、あなたは、追加、削除、変更、道にアイテムの配列を変更することができることを意味します。 あなたが一定の配列を割り当てた場合、配列は変更されません、配列のサイズと内容を変更することはできません。
配列を作成します
私たちは、特定のデータ型からなる空の配列を作成するためにコンストラクタの構文を使用することができます。
var someArray = [SomeType]()
以下は、配列構文の初期サイズを作成することです:
var someArray = [SomeType](count: NumbeOfElements, repeatedValue: InitialValue)
次の例では、INT、サイズ3、0空配列の初期値の型を作成します。
var someInts = [Int](count: 3, repeatedValue: 0)
次の例では、3つの要素を持つ配列を作成します。
var someInts:[Int] = [10, 20, 30]
アクセスアレイ
我々は、配列のインデックスに応じて配列の要素にアクセスすることができ、構文は次のとおりです。
var someVar = someArray[index]
インデックスインデックスは、0から始まり、最初の要素を0相当のインデックスは、インデックス1は、第二の要素に対応する、というように。
以下の例では、我々は、作成、初期化、アレイにアクセスする方法を学ぶことができます:
import Cocoa var someInts = [Int](count: 3, repeatedValue: 10) var someVar = someInts[0] print( "第一个元素的值 \(someVar)" ) print( "第二个元素的值 \(someInts[1])" ) print( "第三个元素的值 \(someInts[2])" )
上記プログラム実行出力は、次のとおりです。
第一个元素的值 10 第二个元素的值 10 第三个元素的值 10
配列を変更します。
あなたは、以下に示すように、我々は配列を初期化し、要素を追加し、配列の末尾に要素を=追加+ APPEND()メソッドまたは代入演算子を使用することができます。
import Cocoa var someInts = [Int]() someInts.append(20) someInts.append(30) someInts += [40] var someVar = someInts[0] print( "第一个元素的值 \(someVar)" ) print( "第二个元素的值 \(someInts[1])" ) print( "第三个元素的值 \(someInts[2])" )
上記プログラム実行出力は、次のとおりです。
第一个元素的值 20 第二个元素的值 30 第三个元素的值 40
また、をインデックスとする配列要素の値を変更することができます。
import Cocoa var someInts = [Int]() someInts.append(20) someInts.append(30) someInts += [40] // 修改最后一个元素 someInts[2] = 50 var someVar = someInts[0] print( "第一个元素的值 \(someVar)" ) print( "第二个元素的值 \(someInts[1])" ) print( "第三个元素的值 \(someInts[2])" )
上記プログラム実行出力は、次のとおりです。
第一个元素的值 20 第二个元素的值 30 第三个元素的值 50
反復します
私たちは、アレイ内のすべての項目を反復処理するためのインループを使用することができます。
import Cocoa var someStrs = [String]() someStrs.append("Apple") someStrs.append("Amazon") someStrs.append("w3big") someStrs += ["Google"] for item in someStrs { print(item) }
上記プログラム実行出力は、次のとおりです。
Apple Amazon w3big Google
我々はまた、各データ項目の値とインデックス値が必要な場合は、アレイを横断する文字列の列挙()メソッドを使用することができます。 例としては、次のとおりです:
import Cocoa var someStrs = [String]() someStrs.append("Apple") someStrs.append("Amazon") someStrs.append("w3big") someStrs += ["Google"] for (index, item) in someStrs.enumerate() { print("在 index = \(index) 位置上的值为 \(item)") }
上記プログラム実行出力は、次のとおりです。
在 index = 0 位置上的值为 Apple 在 index = 1 位置上的值为 Amazon 在 index = 2 位置上的值为 w3big 在 index = 3 位置上的值为 Google
配列をマージ
我々はすでに存在している配列の同じ2つのタイプをマージする加算演算子(+)を使用することができます。 新しい配列のデータ型は、2つの配列のデータ型から推測されます。
import Cocoa var intsA = [Int](count:2, repeatedValue: 2) var intsB = [Int](count:3, repeatedValue: 1) var intsC = intsA + intsB for item in intsC { print(item) }
上記プログラム実行出力は、次のとおりです。
2 2 1 1 1
プロパティを数えます
我々は、配列の要素数を計算するために、Countプロパティを使用することができます。
import Cocoa var intsA = [Int](count:2, repeatedValue: 2) var intsB = [Int](count:3, repeatedValue: 1) var intsC = intsA + intsB print("intsA 元素个数为 \(intsA.count)") print("intsB 元素个数为 \(intsB.count)") print("intsC 元素个数为 \(intsC.count)")
上記プログラム実行出力は、次のとおりです。
intsA 元素个数为 2 intsB 元素个数为 3 intsC 元素个数为 5
isEmptyプロパティ
私たちは、読み取り専用の配列が空であるかどうかを判断するためのisEmpty属性、ブール値を返すことができます。
import Cocoa var intsA = [Int](count:2, repeatedValue: 2) var intsB = [Int](count:3, repeatedValue: 1) var intsC = [Int]() print("intsA.isEmpty = \(intsA.isEmpty)") print("intsB.isEmpty = \(intsB.isEmpty)") print("intsC.isEmpty = \(intsC.isEmpty)")
上記プログラム実行出力は、次のとおりです。
intsA.isEmpty = false intsB.isEmpty = false intsC.isEmpty = true