Caution
お使いのブラウザはJavaScriptが実行できない状態になっております。
当サイトはWebプログラミングの情報サイトの為、
JavaScriptが実行できない環境では正しいコンテンツが提供出来ません。
JavaScriptが実行可能な状態でご閲覧頂くようお願い申し上げます。
配列.append() / insert() / remove()
配列に要素を追加・挿入・削除するメソッドです。Swiftの配列は値型で、変更するには『var』で宣言する必要があります。
構文
// 末尾に要素を追加します。 配列.append(要素) // 指定したインデックスに要素を挿入します。 配列.insert(要素, at: インデックス) // 指定したインデックスの要素を削除します。 配列.remove(at: インデックス) // 末尾の要素を削除します。 配列.removeLast() // 先頭の要素を削除します。 配列.removeFirst() // すべての要素を削除します。 配列.removeAll()
メソッド一覧
| メソッド | 概要 |
|---|---|
| append(_ newElement:) | 配列の末尾に要素を1つ追加します。 |
| append(contentsOf:) | 配列の末尾に別の配列の要素をまとめて追加します。 |
| insert(_ newElement:, at:) | 指定したインデックスの位置に要素を挿入します。 |
| remove(at:) | 指定したインデックスの要素を削除し、その要素を返します。 |
| removeFirst() | 先頭の要素を削除します。配列が空の場合はクラッシュします。 |
| removeLast() | 末尾の要素を削除します。配列が空の場合はクラッシュします。 |
| removeAll() | すべての要素を削除します。 |
サンプルコード
var fruits = ["りんご", "みかん", "ぶどう"]
// 末尾に要素を追加します。
fruits.append("もも")
print(fruits) // ["りんご", "みかん", "ぶどう", "もも"]
// 別の配列をまとめて追加します。
fruits.append(contentsOf: ["いちご", "メロン"])
print(fruits) // ["りんご", "みかん", "ぶどう", "もも", "いちご", "メロン"]
// インデックス1の位置に挿入します。
fruits.insert("バナナ", at: 1)
print(fruits) // ["りんご", "バナナ", "みかん", ...]
// インデックス2の要素を削除します。
let removed = fruits.remove(at: 2)
print(removed) // "みかん"
// 末尾の要素を削除します。
fruits.removeLast()
print(fruits.last ?? "") // "いちご"
// すべての要素を削除します。
fruits.removeAll()
print(fruits.isEmpty) // true
概要
Swiftの配列は値型(構造体)のため、変更するには必ず『var』で宣言する必要があります。『let』で宣言した配列に対してこれらのメソッドを呼び出すとコンパイルエラーになります。
『remove(at:)』は削除した要素を戻り値として返すため、削除しながら値を取り出したい場合に便利です。存在しないインデックスを指定した場合は実行時クラッシュ(Index out of range)になるため、事前に配列のサイズを確認してください。
要素の検索には『contains() / firstIndex()』、変換には『map() / compactMap()』を参照してください。
記事の間違いや著作権の侵害等ございましたらお手数ですがこちらまでご連絡頂ければ幸いです。