C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[5]: 配列に初期値を入れたい


(過去ログ 54 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■30400 / inTopicNo.1)  配列に初期値を入れたい
  
□投稿者/ やまじ (2回)-(2008/12/22(Mon) 22:17:42)

分類:[C#] 

object[] aryValue = new object[100];
というような配列に例えば初期値として'0'を入れたいのですが、
やっぱり、
object[] aryValue = new object[100]{0,0,0,0,0,0,0,0,・・・・・0};
みたいに延々と入れるしかありませんか?
よろしくお願いします。

引用返信 編集キー/
■30401 / inTopicNo.2)  Re[1]: 配列に初期値を入れたい
□投稿者/ やまじ (3回)-(2008/12/22(Mon) 22:21:19)
2008/12/22(Mon) 22:24:12 編集(投稿者)
2008/12/22(Mon) 22:24:05 編集(投稿者)

すいません。解決しました。
解決済み
引用返信 編集キー/
■30402 / inTopicNo.3)  Re[1]: 配列に初期値を入れたい
□投稿者/ επιστημη (1477回)-(2008/12/22(Mon) 22:29:34)
επιστημη さんの Web サイト
for-loop でくるくる代入しちゃダメですか?

引用返信 編集キー/
■30404 / inTopicNo.4)  Re[2]: 配列に初期値を入れたい
□投稿者/ Azulean (255回)-(2008/12/22(Mon) 22:34:43)
VS2008ならこんなんでも。

object[] test = new object[] { Enumerable.Repeat(0, 100) };

解決済みは入れておきますね。
解決済み
引用返信 編集キー/
■30406 / inTopicNo.5)  Re[3]: 配列に初期値を入れたい
□投稿者/ 魔界の仮面弁士 (953回)-(2008/12/22(Mon) 22:57:43)
No30404 (Azulean さん) に返信
> VS2008ならこんなんでも。
> object[] test = new object[] { Enumerable.Repeat(0, 100) };

それだと、test.Length == 1 になってしまいませんか?
.Length == 100 な object[] にするならば、これでどうでしょう。

object[] test1 = Enumerable.Repeat((object)0, 100).ToArray();
object[] test2 = Enumerable.Repeat<object>(0, 100).ToArray();
解決済み
引用返信 編集キー/
■30408 / inTopicNo.6)  Re[4]: 配列に初期値を入れたい
□投稿者/ Azulean (256回)-(2008/12/22(Mon) 23:13:19)
2008/12/22(Mon) 23:13:33 編集(投稿者)

>>object[] test = new object[] { Enumerable.Repeat(0, 100) };
>
> それだと、test.Length == 1 になってしまいませんか?
です。orz


# ちょっと考えが足りなかったのと実験しなかったのは問題だなぁ。


解決済み追加で編集。
解決済み
引用返信 編集キー/
■30411 / inTopicNo.7)  Re[5]: 配列に初期値を入れたい
□投稿者/ 鶏唐揚 (319回)-(2008/12/23(Tue) 00:17:30)
扱う値が数値ならobject型ではなくint型などのほうが良いです。

それなら初期化せずとも初期値は設定されていますし、
Array.Clearメソッドで要素数を保持したまま値を初期化できます
(object型だとnullになる)

どうしてもobject型でやるなら、forで回すのが一番ラク
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -