2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【C#】同じ値の羅列、連続する値の羅列を生成する方法

Posted at

同じ値の羅列や、連続する値の羅列が必要な場合は、Enumerable.Repeat()とEnumerable.Range()を使うと簡単に所望のデータを生成することができます。

for文を使わずに1行で簡単に書けるので、例えば単体テスト用のデータを生成する際にも使いやすいと思います。

同じ値の羅列を生成する

// 要素数が10で、値が「あいうえお」の配列を生成する
var array = Enumerable.Repeat("あいうえお",10).ToArray();

// 要素数が10で、値が「あいうえお」のリストを生成する
var list = Enumerable.Repeat("あいうえお",10).ToList();

連続する値の羅列を生成する

// 5から始まり、7個の連続した値(5,6,7,8,9,10,11)の配列を生成する。
var array = Enumerable.Range(5, 7).ToArray();

// 5から始まり、7個の連続した値(5,6,7,8,9,10,11)のリストを生成する。
var list = Enumerable.Range(5, 7).ToList();

Enumerable.Range()をEnumerable.Select()と組み合わせると、以下のようにfor文を使わなくても少し複雑な処理ができます。

// 「1番目,2番目,...10番目」という文字列を作成する。
var txt = string.Join(",", Enumerable.Range(1, 10).Select(num => num.ToString() + "番目"));
System.Console.WriteLine(txt);
// 1番目,2番目,3番目,4番目,5番目,6番目,7番目,8番目,9番目,10番目
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?