• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ジェネリックリスト内の文字列を一度に表示したい。)

ジェネリックリスト内の文字列を一度に表示する方法とは?

このQ&Aのポイント
  • プログラミング初心者がジェネリックリスト内の人名を一度に表示する方法について質問しています。
  • 具体的には、ジェネリックリスト内の要素を一つずつ順に表示するループ構文を作成したが、メッセージボックスが次々に表示されてしまう問題があると述べています。
  • 最終的には、3周目では「山田鈴木佐藤がいます」というように一度に名前を表示したいとのことです。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

namelist.Add(Name); string t =""; foreach (string s in namelist) { t = t +s; } MessageBox.Show(t + "がいます");

yamada504
質問者

お礼

丁寧なお答え有り難うございました。 このコードでできました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

回答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

yamada504
質問者

お礼

丁寧なお答え有り難うございました。 ToArray構文を使えば良いですね

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • List<T>のタイプを調べる方法は?

    C# を使用しています。 たとえば {  string str;  MessageBox.Show(obj.GetType().Name); } これだと[string]が表示されます。 次に {  List<int> ilist = new List<int>(); MessageBox.Show(obj.GetType().Name); } これだと[List`1]が表示されます。 これだけでもListってことだけはわかるのですが 最後に {  List<int> ilist = new List<int>();  List<string> slist = new List<string>();  MessageBox.Show(ilist.GetType().Name);  //→[int]  MessageBox.Show(slist.GetType().Name);  //→[string] } この場合に [string],[int]と表示させるにはどうすれば よいのでしょうか?

  • コンボボックスで表示されたリストの一番上を反転させたい

    WINDOWS XP、EXCEL2002を使っています。 ユーザーフォームにコンボボックスを配置してあります。 RowSourceには  山田 yamada  佐藤 satou  鈴木 suzuki としてあり、コンボボックスに「s」と入力すると「佐藤」が、「su」入力すると「鈴木」がリストの一番上に来るようになっています。 「su」と入力し、ユーザーが「鈴木」でよいと判断した場合Enterを押せば「su」の所に「鈴木」が入力されるようにしたいのですが、今はそのまま「su」となってしまいます。 常にリストの一番上がマウスで触られた状態?になってくれればいいのですが、このやり方がわかりません。 どうかよろしくお願いします。

  • javaでリストにオブジェクトを入れたい

    ユーザー情報を配列にしたものをセッターを使い、オブジェクトをリストに入れる処理をしたいです。 例(yamada,pas1,山田) リストを使用しているのは後々他のユーザーを追加する予定の為です。 例(yamada,pas1,山田) (suzuki,pas2,鈴木) リストにlist.add("yamada")などと入力すれば表示させることが出来るのですが、 オブジェクトを入れるとうまくいきません。list.add(オブジェクト名); 実行するとコンソールに「GetUser@19e0bfd」のようなものが出てきます。どうすればよろしいでしょうか? ここから上は省略。カプセル化したゲッターセッターの処理をしています。 public static void main(String[] args){   GetUser gu = new GetUser();//ユーザー情報をnew      String name[]=new String[3];   name[0]="yamada";   name[1]="pas1";   name[2]="山田";   gu.setId(name[0]);   gu.setPass(name[1]);   gu.setName(name[2]);   List list = new ArrayList();   list.add(gu); }

    • ベストアンサー
    • Java
  • リストの最後にいつも同じ文字列を入力する方法ってありますか?

    リストの最後にいつも同じ文字列が入力される方法ってありますか? A1 田中 A2 鈴木 A3 佐藤 A4  上の時に記載された次のセル、(この時はA4)に山田が入力される。 リストの行がいくつまであるか確定はされてないけれど、最後尾にはいつも山田を表示させたい。そういう方法ってありますか?

  • Excel 数字から判断して文字を表示

    Excelにて以下の様な処理を関数を用いて行いたいと思います(都合上、VBは不可) 1)数字に名前を割り当てる ex:「1-田中」、「2-鈴木」、「3-佐藤」、「4-山田」、「5-橋本」、「6-山本」、「7-沢田」、「8-山岡」 2)1~9までの数字を入力する ex:「12345」、「3456」、「2487」 3)2で入力された数字を元に1の名前を表示する ex: 「12345」→「田中、鈴木、佐藤、山田、橋本」 「3456」→「佐藤、山田、橋本、山本」 「2487」→「鈴木、山田、山岡、沢田」 この様な処理はどうすれば実現出来ますでしょうか? 数字の組み合わせがいくつもあるのでVLOOKUPは使えない。と思い、質問させて頂きました よろしくお願い致します。

  • エクセル VBA リストを参照して 色を変えたい

    Sheet1に リストとして       A    B    C    D --+-------+-------+-------+-------+------+-------+------- 1   山田 --+-------+-------+-------+-------+------+-------+------- 2   鈴木 --+-------+-------+-------+-------+------+-------+------- 3   佐藤 --+-------+-------+-------+-------+------+-------+------- 4   内藤 Sheet2に 一覧表として       A    B     C    D --+-------+-------+-------+-------+------+-------+------- 1   山田   赤松   斎藤   内藤 --+-------+-------+-------+-------+------+-------+------- 2   佐藤   清水   鈴木   米田 --+-------+-------+-------+-------+------+-------+------- 3   上田   今川   藤本   越崎 --+-------+-------+-------+-------+------+-------+------- 4   千葉   尾崎   松田   安西 と、作成した場合、Sheet1のリストにある名前のみ フォントカラーを赤にするマクロを組んでいただきたいのですが・・・ 宜しくお願いします。

  • 同じ文字列を抽出して新規シート作成

    A列~E列までデータが入力されています。 E列は所々、空白セルがあります。 1行目は見出しです。 元データのA列の中で同じ文字列を探して 見出しと該当するA~E列の行を新規シートとして作成。 その際、シート名はA列の文字列。 A列の文字列が2つ以上見つからなくても A列の文字列を新規シートにする。 最終行は常に変動します。 元データ (B列~E列は割愛) A-1 名前 A-2 鈴木 A-3 佐藤 A-4 鈴木 A-5 山田 A-6 佐藤 新規シート名 「鈴木」 A-1 名前 A-2 鈴木 A-3鈴木 新規シート名 「佐藤」 A-1 名前 A-2 佐藤 A-3 佐藤 新規シート名 「山田」 A-1 名前 A-2 山田 上記の事をマクロで実行させたいです。 ご指南の程、宜しくお願い致します。 エクセル2013

  • php、mysqlを使用した得点ランキング

    現在得点ランキングを作成しています。 mysqlの中に入っているデータを取り出して表示させたいのですが、 なかなかうまくいかず困っています。 mysql内 |id|name| |1|山田| |2|佐藤| |3|山田| |4|鈴木| |5|佐藤| |6|山田| |7|鈴木| |8|田中| としております。 表示方法は 順位| 名前 | 得点数 1位 | 山田 | 3 2位 | 佐藤 | 2 2位 | 鈴木 | 2 4位 | 田中 | 1 としたいです。 mysql内に入っている名前の数で得点数を出してなおかつソートで降順にしたいです。 お分かりの方がいらっしゃいましたらご教示お願いします。

    • ベストアンサー
    • PHP
  • 文字列の並び替えについて。

    #include<stdio.h> #include<string.h> main() {char name[40][50]; int i; for(i=1;i<=;i++){ printf("名前="); gets(name[i]); } if(strcmp(name[1],name[2])>0){ printf("%s %s \n",name[2],name[1]);} if(strcmp(name[1],name[2])<0){ printf("%s %s \n",name[1],name[2]);} if(strcmp(name[1],name[2])==0){ printf("%s %s \n",name[1]);} } は二人の名前を早い順に並べ替えるものなんですが、これを五人の名前を並べ替えるものにしたいので、どのようなプログラムにしたらいいのか教えてください。

  • リストの単語がテキストファイルで何回出てくるか

    「人の苗字+改行」がたくさん入力されているname.txtと 「苗字が登場する会話文」がたくさん入力されているconv.txtの 二つのファイルがあります。 【name.txt】 鈴木 田中 佐藤 ・・・ 【conv.txt】 昨日の山田さんの話によれば、明日は佐藤さんが担当だそうだ。 京都の中山君が来たときに荷物を届けてほしい。 ・・・ これらname.txtのそれぞれが、conv.txt全体で何回出てきたかを求めるprelのプログラムを作りたいのですが、どのようにしたら良いでしょうか。 アウトプットは 鈴木 256 田中 982 佐藤 157 ・・・ となるようにしたいと思っています。 皆さまのお知恵をお貸しくださいませ。