二次元配列(Java):こんな質問でした

ツール

質問タイトル

二次元配列への代入

 

質問内容

テキスト107ページ辺りに二次元配列への代入方法が乗っているんですが、
もう少し簡単に代入できる方法はないんでしょうか?

普通の配列みたいに
int[] aa={1,2,3};
とかってできないんですか?

一回一回
aa[0][1]=1;
aa[0][2]=2;
・・・

としなければならないんでしょうか?

■返信内容

返信タイトル
Re: 二次元配列への代入

返信内容
XXXX 様

担当のXXXXです

配列の各要素に初期値を設定する方法は次のような書式を使いました。
—————————–
型名 配列変数名[] = {値1, 値2, ..};
—————————–

多次元配列の場合は要素に代入される値が別の配列となりますので次のような書式となります。

—————————–
型名 配列変数名1[] = {値1, 値2, ..};
型名 配列変数名2[] = {値1, 値2, ..};

型名 配列変数名[][] = {配列変数名1, 配列変数名2};
—————————–

別途作成された配列を値のように記述しています。
またさらに次のように記述することもできます。
—————————–
型名 配列変数名[][] = {{値1_1, 値1_2, ..}, {値2_1, 値2_2, ..}};
—————————–

具体的には次のように記述します。

int num[][] = {{10, 8, 5}, {9, 16, 4}, {3, 7, 5}};

通常の配列では値をカンマ(,)で区切って記述していましたが
多次元配列の場合は値の場所に別の配列を記述しています。
これは次のように記述した場合と同じです。

int num[][] = new int[2][3];

num[0][0] = 10;
num[0][1] = 8;
num[0][2] = 5;

num[1][0] = 9;
num[1][1] = 16;
num[1][2] = 4;

num[2][0] = 3;
num[2][1] = 7;
num[2][2] = 5;

Javaではプログラムの途中で空白や改行を入れることができますので、
初期値が長くなった場合には
例えば次のように記述すると分かりやすいかもしれません。

int num[][] = {
{10, 8, 5},
{9, 16, 4},
{3, 7, 5}
};

注意点としては通常の配列と同じく必要な要素の分だけ全て値を指定する必要がありますので
お気をつけください

 

 

久しぶりの質問ネタです

ツール
スポンサーリンク
sutaruhinをフォローする
システム・スタルヒン合同会社
タイトルとURLをコピーしました