0
int i = 0;
int x = 10;
List<int> group = new List<int>();

while (i < x)
{
    RichTextBoxShowTafel.AppendText(Convert.ToString(group[i]));
    i++;
}

なぜこれが機能しないのですか?「グループ」というリストの最初の10個の番号を表示したいと思います。

編集:私は実際に変数を作成してそれを続けて印刷したいです...

4

5 に答える 5

8

グループ変数には何も入れません。空のリストのみをインスタンス化しました。

そして、あなたはこれをするほうがよいでしょう:

foreach (int item in group)
{
  RichTextBoxShowTafel.AppendText(item.ToString());
}
于 2012-05-17T16:48:10.707 に答える
2

グループが空だから?要素がないため、最初の反復で行うgroup[0]にアクセスできません。

于 2012-05-17T16:48:54.350 に答える
1

group空だからです!

ループが最初に実行されるとき、i = 0次に試行Convert.ToString(groups[i])します。これは、のインデックスがないため、常に失敗します0group

于 2012-05-17T16:51:31.680 に答える
1

取得する前に、リストに要素を追加する必要があります。これが、ArgumentOutOfRangeExceptionが発生した理由です。最初に要素を追加することで、例外を回避できます。

    int i = 0;
    int x = 10;
    List<int> group = new List<int>();

    while (i < x)
    {
        group.Add(i);
        RichTextBoxShowTafel.AppendText(Convert.ToString(group[i]));
        i++;
    }
于 2012-05-17T16:53:46.407 に答える
0

数字が入力されることを期待groupしている場合は、自分でそれを行う必要があります。宣言して初期化するとList<int> group = new List<int>();、作成されるだけです。中には何もありません。変数を入れてみたい場合は、次のようにすることができます。

for(int j = 0; j < 10; j++)
{
   group.Add(j);
}
于 2012-05-17T17:02:25.553 に答える