- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ジェネリックリスト内の文字列を一度に表示したい。)
ジェネリックリスト内の文字列を一度に表示する方法とは?
このQ&Aのポイント
- プログラミング初心者がジェネリックリスト内の人名を一度に表示する方法について質問しています。
- 具体的には、ジェネリックリスト内の要素を一つずつ順に表示するループ構文を作成したが、メッセージボックスが次々に表示されてしまう問題があると述べています。
- 最終的には、3周目では「山田鈴木佐藤がいます」というように一度に名前を表示したいとのことです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
namelist.Add(Name); string t =""; foreach (string s in namelist) { t = t +s; } MessageBox.Show(t + "がいます");
その他の回答 (1)
- Yune-Kichi
- ベストアンサー率74% (465/626)
回答No.2
foreachで各要素ごとに表示しているのだから当たり前ですね。 まとめたいのであれば,まとめた物を表示すればよいです。 区切りがないならString.Concatを,区切りがあるならString.Joinを使えば一発です。 .NET Framework 4.0以降なら MessageBox.Show(String.Concat(namelist) + "がいます。"); Reference) MSDN: String.Concat メソッド (IEnumerable(String)) (System) http://msdn.microsoft.com/ja-jp/library/dd784338 .NET Framework 3.5までなら MessageBox.Show(String.Concat(namelist.ToArray()) + "がいます。"); References) MSDN: List(T).ToArray メソッド (System.Collections.Generic) http://msdn.microsoft.com/ja-jp/library/x303t819 MSDN: String.Concat メソッド (String[]) (System) http://msdn.microsoft.com/ja-jp/library/0wkb0y3w
質問者
お礼
丁寧なお答え有り難うございました。 ToArray構文を使えば良いですね
お礼
丁寧なお答え有り難うございました。 このコードでできました。