C#の配列に要素を追加する方法!(Resize・List変換など)

C#C#

C#の配列に要素を追加する方法について書いています。
載せているコードについては、.Netのバージョン6(C#のバージョン10)で確認しました。

C#の配列は最初に要素数を指定して使います。
要素数を気にせずに動的に使いたい場合にはListを使うようにしましょう。

PR

配列を作って要素を追加する

まずは、配列を宣言して要素を追加してみます。

string[] fruits = new string[5];
fruits[0] = "apple";
fruits[1] = "banana";
fruits[2] = "orange";

foreach (string fruit in fruits) {
    if (fruit != null) {
        Console.WriteLine(fruit);
    }
}

要素が5つ入る文字列型のfruits配列を作成しました。
このように、配列を作る場合は先に要素数を指定して作成します。
配列に追加できる要素数の上限は、指定した要素数までです。

その配列に3つの要素を入れています。(“apple” / “banana” / “orange”)
その後にforeach文を使用して、ループして要素を出力しました。

要素を入れていない3番,4番目もループで回るので、nullじゃない時だけ出力してみました。
結果は、下記のように入れた要素が出力されます。

apple
banana
orange

配列作成と同時に要素を初期化する

配列の作成と同時に要素を指定することができます。
下記は数値型の配列に要素を3つ入れて、宣言と同時に要素を追加しています。

int[] numbers = new int[3] { 10, 22, 30 };
foreach (int number in numbers) {
    Console.WriteLine(number);
}

配列作成時に要素を指定する場合には、指定した要素数の数だけ要素を波括弧({})の間に入れてあげる必要があります。
今回は、「10, 22, 30」をnumbers配列に入れて作成しました。

出力すると、下記のように要素が追加されたことが確認できました。

10
22
30
PR

配列のサイズを増やして、要素を追加する

Array.Resizeを使うことで、配列のサイズを増やすこともできます。

var drinks = new string[3] {"water", "cola", "coffee"};

Array.Resize(ref drinks, 4);
drinks[drinks.Length - 1] = "beer";

foreach (string drink in drinks) {
    Console.WriteLine(drink);
}

3つの要素を持つdrinks配列を作成しています。
その次に、Array.Resizeを使って、drinks配列を要素が4つになるようにリサイズしています。

そして、drinks配列の最後に「beer」という文字列を入れました。
最後にforeachで出力すると、下記のように要素が追加されたことが確認できました。

water
cola
coffee
beer

Listに変換して、要素を追加する

配列から要素サイズを気にせずに使えるListに変換することができます。

var drinks = new string[3] {"water", "cola", "coffee"};
var drinkList = drinks.ToList();
drinkList.Add("wine");
drinkList.Add("sake");

foreach (string drink in drinkList) {
    Console.WriteLine(drink);
}

先ほどのプログラムを少し変えてみました。
3つの要素を持つdrinks配列を作成した後に、配列を下記でリストに変換しています。

var drinkList = drinks.ToList();

配列からToListメソッドを呼ぶことで、リストに変換することができました。
その後にリストに変換したので、Addメソッドを使用して2つの要素を追加しています。

最後にforeachで出力すると、下記のように配列に要素が入っていることが確認できました。

water
cola
coffee
wine
sake

コメント

Ads Blocker Image Powered by Code Help Pro

広告ブロッカーが検出されました。

ブラウザの拡張機能を使用して広告ブロックをしていることが確認できました。 ブラウザの広告ブロッカー機能を無効にしていただくか、codelikes.comをホワイトリストに追加し、更新をクリックしてください。 お手数ですが、よろしくお願いします🙇‍♂️
タイトルとURLをコピーしました