web-dev-qa-db-ja.com

Swiftで空の配列を作成する方法

Swiftで配列を作成する方法に私は本当に混乱しています。空の配列をいくつか詳細に作成する方法をいくつ教えてください。

123
Inuyasha

どうぞ:

var yourArray = [String]()

上記は文字列だけでなく他の型にも働きます。それはほんの一例です。

それに値を追加する

私はあなたが最終的にそれに値を追加したいと思うでしょう!

yourArray.append("String Value")

または

let someString = "You can also pass a string variable, like this!"
yourArray.append(someString)

挿入して追加

いくつかの値を取得したら、追加する代わりに新しい値を挿入できます。たとえば、(最後に追加するのではなく)新しいオブジェクトを配列の先頭に挿入する場合は、次のようにします。

yourArray.insert("Hey, I'm first!", atIndex: 0)

また、変数を使用して挿入をより柔軟にすることもできます。

let lineCutter = "I'm going to be first soon."
let positionToInsertAt = 0
yourArray.insert(lineCutter, atIndex: positionToInsertAt)

あなたは最終的にいくつかのものを削除したいかもしれません

var yourOtherArray = ["MonkeysRule", "RemoveMe", "SwiftRules"]
yourOtherArray.removeAtIndex(1)

上記の値は、配列内のどこに値があるかを知っているとき(つまり、そのインデックス値がわかっているとき)に非常に役立ちます。インデックス値が0から始まるので、2番目のエントリはインデックス1になります。

インデックスを知らないで値を削除する

しかし、そうでなければどうなりますか? yourOtherArrayが何百もの値を持っていて、あなたが知っているのは "RemoveMe"と等しいものを削除したいということだけですか?

if let indexValue = yourOtherArray.indexOf("RemoveMe") {
    yourOtherArray.removeAtIndex(indexValue)
}

これであなたは始められるはずです!

247
Dave G
var myArr1 = [AnyObject]()

任意のオブジェクトを格納できます

var myArr2 = [String]()

文字列しか格納できない

25
vichhai

Swift 3

Swiftで空の配列を作成するには3つの方法があり、短縮構文が常に推奨されます。

方法1:短縮構文

var arr = [Int]()

方法2:配列初期化子

var arr = Array<Int>()

方法3:配列リテラルを持つ配列

var arr:[Int] = []

方法4:クレジットは@BallpointBenに行きます

var arr:Array<Int> = []
20
Xinyang Li

あなたが使用することができます

var firstNames: [String] = []
20
DPen

Swiftで配列を作成/初期化するには、主に2つの方法があります。

var myArray = [Double]()

これはDoubleの配列を作成します。

var myDoubles = [Double](count: 5, repeatedValue: 2.0)

これは、すべてdoubleの値で初期化された5つのdoubleの配列を作成します。

16
Aaron

あなたが文字列型の空の配列を宣言したい場合は、5つの異なる方法でそれを行うことができます -

var myArray: Array<String> = Array()
var myArray = [String]()
var myArray: [String] = []
var myArray = Array<String>()
var myArray:Array<String> = []

任意の型の配列: -

    var myArray: Array<AnyObject> = Array()
    var myArray = [AnyObject]()
    var myArray: [AnyObject] = []
    var myArray = Array<AnyObject>()
    var myArray:Array<AnyObject> = []

整数型の配列: -

    var myArray: Array<Int> = Array()
    var myArray = [Int]()
    var myArray: [Int] = []
    var myArray = Array<Int>()
    var myArray:Array<Int> = []
6
piyush ranjan

Swift 4の一般的なタスクをいくつか紹介します。これらのタスクは、慣れるまで参照として使用できます。

    let emptyArray = [String]()
    let emptyDouble: [Double] = []

    let preLoadArray = Array(repeating: 0, count: 10) // initializes array with 10 default values of the number 0

    let arrayMix = [1, "two", 3] as [Any]
    var arrayNum = [1, 2, 3]
    var array = ["1", "two", "3"]
    array[1] = "2"
    array.append("4")
    array += ["5", "6"]
    array.insert("0", at: 0)
    array[0] = "Zero"
    array.insert(contentsOf: ["-3", "-2", "-1"], at: 0)
    array.remove(at: 0)
    array.removeLast()
    array = ["Replaces all indexes with this"]
    array.removeAll()

    for item in arrayMix {
        print(item)
    }

    for (index, element) in array.enumerated() {
        print(index)
        print(element)
    }

    for (index, _) in arrayNum.enumerated().reversed() {
        arrayNum.remove(at: index)
    }

    let words = "these words will be objects in an array".components(separatedBy: " ")
    print(words[1])

    var names = ["Jemima", "Peter", "David", "Kelly", "Isabella", "Adam"]
    names.sort() // sorts names in alphabetical order

    let nums = [1, 1234, 12, 123, 0, 999]
    print(nums.sorted()) // sorts numbers from lowest to highest
4
Bobby

Swiftの配列は、** Array <Element> **と表記されます。ここで、Elementは、配列に格納できる値の型です。

配列は次のように初期化できます。

let emptyArray = [String]()

それは文字列型の配列であることを示しています

EmptyArray変数の型は、初期化子の型から[String]であると推論されます。

要素を含む文字列型の配列を作成する場合

var groceryList: [String] = ["Eggs", "Milk"]

groceryListは2つの項目で初期化されました

GroceryList変数は、「文字列値の配列」として宣言され、[String]と表記されます。この特定の配列は、String型の値型を指定しています。String値のみを格納できます。

配列にはさまざまな性質があります。

- 配列に要素があるかどうかをチェックする(配列が空かそうでない場合)

countプロパティが0に等しいかどうかをチェックするためのisEmptyプロパティ(論理値):

if groceryList.isEmpty {
    print("The groceryList list is empty.")
} else {
    print("The groceryList is not empty.")
}

- 配列内の要素を追加(追加)する

配列のappend(_ :)メソッドを呼び出すことで、新しい項目を配列の末尾に追加できます。

groceryList.append("Flour")

groceryListに3つの項目が含まれています。

あるいは、加算代入演算子(+ =)を使用して、1つ以上の互換性のある項目の配列を追加します。

groceryList += ["Baking Powder"]

groceryListに4つのアイテムが含まれています

groceryList += ["Chocolate Spread", "Cheese", "Peanut Butter"]

groceryListには7アイテムが含まれています

3
ABS

配列インデックスを渡して配列の内容を削除することも、すべてを削除することもできます。

    var array = [String]()
    print(array)
    array.append("MY NAME")
    print(array)
    array.removeFirst()
    print(array)
    array.append("MY NAME")
    array.removeLast()
    array.append("MY NAME1")
    array.append("MY NAME2")
    print(array)
    array.removeAll()
    print(array)
2
Ullas Kumar

Swift 5

// Create an empty array
var emptyArray = [String]()

// Add values to array by appending (Adds values as the last element)
emptyArray.append("Apple")
emptyArray.append("Oppo")

// Add values to array by inserting (Adds to a specified position of the list)
emptyArray.insert("Samsung", at: 0)

// Remove elements from an array by index number
emptyArray.remove(at: 2)

// Remove elements by specifying the element
if let removeElement = emptyArray.firstIndex(of: "Samsung") {
    emptyArray.remove(at: removeElement)
}

同様の答えが与えられますが、それはSwiftの最新バージョン(Swift 5)では機能しないので、ここで最新の答えを得ます。それが役に立てば幸い! :)

1
Abdullah Ajmal

互換性:Xcode 6.0.1+

宣言で配列の要素タイプを指定することにより、空の配列を作成できます。

例えば:

// Shortened forms are preferred
var emptyDoubles: [Double] = []

// The full type name is also allowed
var emptyFloats: Array<Float> = Array()

Apple開発者ページの例(配列):

これがこのページにつまずく人を助けることを願っています。

0
CrazyOne

Swift 5による

    // An array of 'Int' elements
    let oddNumbers = [1, 3, 5, 7, 9, 11, 13, 15]

    // An array of 'String' elements
    let streets = ["Albemarle", "Brandywine", "Chesapeake"]

    // Shortened forms are preferred
    var emptyDoubles: [Double] = []

    // The full type name is also allowed
    var emptyFloats: Array<Float> = Array()

0