2

リストボックスを配列に変換しようとしています:

var modarray = listBox1.Items.Cast<String>().ToArray();

しかし、int配列も使用する必要があるため、次のことを試しました。

int[] arr = modarray.Cast<int>().ToArray();

配列を変換できないことを示唆するエラーが表示されます。誰か助けてくれませんか?

4

3 に答える 3

4

これを試して:

int[] arr = modarray.Select(int.Parse).ToArray();

これはint.Parse()、元の配列の各文字列のメソッドを使用して、新しい整数配列を作成します。

于 2012-11-20T17:26:11.263 に答える
1

代わりにこれを試してください:

int[] arr = modarray.Select(I => Convert.ToInt32(I)).ToArray();
于 2012-11-20T17:25:13.547 に答える
1

.Cast<int>()のようなものですforeach (var i in list) yield return (int)i;

アイテムが下の文字列である場合、これは失敗します。

私はあなたが必要だと信じています:int[] arr = modarray.Select(s => Int32.Parse(s)).ToArray();

于 2012-11-20T17:26:01.837 に答える