[C#][Linq]配列(Array)を初期化時に同じ値で埋めるには?

C#

どうも、ちょげ(@chogetarou)です。

Linqを使って配列(Array)を初期化時に同じ値で埋める方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

Linqを使って配列(Array)を初期化時に同じ値で埋めるには、Enumerable.Repeat()を使います。

まず、Sytem.Linqを導入します。

using System.Linq;

次に、配列の宣言時にEnumerable.Repeat().ToArray()を代入します。

そして、Repeat()の第1引数に埋める値、第2引数に要素数を指定します。

//value = 値, count = 要素数
T[] myArray = Enumerable.Repeat(value, count).ToArray();

上記のEnumerable.Repeat(value, count).ToArray()は、Repeat()の第2引数の数を第1引数の値で埋めた配列を生成します。

Enumerable.Repeat(value, count).ToArray()で配列を初期化すれば、配列を初期化時に同じ値で埋めることができます。

使用例

using System;
using System.Linq;
public class Example
{   
	public static void Main()
	{
		bool[] myArray = Enumerable.Repeat(true, 5).ToArray();
		
		foreach (var i in myArray) {
		    Console.WriteLine(i);
		}
 	}
}

コメント

タイトルとURLをコピーしました