
以下はJavaの参考書の問題集に掲載されていた、無名配列を作成するソースコードです。
この書き方について疑問があるので、質問させて頂きます。
int[][]n=new int[2][];
n[0]=new int[3];
このn[0]=new int[3];が、無名配列を使って要素に値を設定していると解説に書かれていました。
しかし、この参考書では、別のページで無名配列の作成方法として、int[]n; n=new int[]{1,2,5};のように、要素リストを代入する書き方が、無名配列の例として
紹介されていました。。
質問1:何故、n[0]=new int[3];の書き方も無名配列なのですか?
質問2:そもそも「無名配列」とは何ですか?参考書にもネットで調べても
その解説がほとんど無かったので、、、
No.2ベストアンサー
- 回答日時:
無名配列という言葉で検索すると、もっとヒットするのはPerlのものですね。
Perlは標準的には、配列は配列名とセットでないと定義できないのですが、
名前無しでも定義する文法があって、それを無名配列と呼びます。
Perlで多次元配列を使いたいとき、この無名配列という仕様が関わってくるのですが、
どうもこの辺から、その参考書の筆者は元Perl使いで、Perlの用語をJavaでも混同して使っているというのが真相な気がしてなりません。
(Perlと比較して考えると、そもそもJavaの配列は全て無名配列です。)
無名○○という用語は、普通は名前を付けなければ定義できないけれど、
特別に名前無しでも定義する方法がある。というとき、前者と区別するために、無名○○とか、匿名○○と呼ぶことが多いです。
(メソッドは通常名前無しでは定義できませんが、C#とかJavaScriptでは名前無しで定義する方法があり、それを匿名メソッドとか呼ばれます。)
Javaには無名クラスという、クラス名を付けずにクラスを定義できる仕様がありますが、こっちは一般的な用語です。
とりあえず「無名配列」は一般的な用語でもないですし、上の話は理解できなくても重要な事は何一つないので、特に気にせず先に進むのがベストでしょう。
No.1
- 回答日時:
「問題集」に「無名配列」と出ているなら, その「Javaの参考書」ないし「Javaの参考書の問題集」に「無名配列」なるものの説明があるはずです. それを見てください. もし全く説明されていないなら, それはその本の (著者の) 怠慢というべきでしょう.
一般論的には名前があるかどうかなんて関係ないというか, 「名前がないとそもそもアクセスしようがない」というか....
丁重なご解答誠にありがとうございます!
参考になります!
無名配列について、解説されたものが他のページにないかどうか再度探してみます!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【C#】ハッシュテーブル(連想...
-
[Ljava.lang.Stringってなんですか
-
この警告はどうすれば?
-
【Ajax通信&Java】配列の受け取...
-
strutsでの配列の扱い方について。
-
C言語でunsigned char配列を連...
-
javaでEUC-JP文字列→UTF-8への変換
-
Javaで文字と数字が混ざったも...
-
配列をセッションに割り当てた後で
-
同じ配列またはクラスを、2回...
-
String型をbyte型へ
-
jspでの二次元配列
-
C#で配列の戻り値について
-
C言語のポインターに関する警告
-
IF関数でEmpty値を設定する方法。
-
ORA-01858: 数値を指定する箇所...
-
ループ処理の際、最後だけ","を...
-
System.err. printlnとSystem.o...
-
System.exit()の値を取得したい
-
動的配列が存在(要素が有る)か...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[Ljava.lang.Stringってなんですか
-
Javaで文字と数字が混ざったも...
-
この警告はどうすれば?
-
配列の中に複数存在する数がい...
-
【C#】ハッシュテーブル(連想...
-
ページング
-
C#の質問
-
n番目に大きな値を探索する
-
javaでデータベース(mysql)か...
-
C#で動的配列Listの中身をListB...
-
C言語でunsigned char配列を連...
-
同じ配列またはクラスを、2回...
-
Javaで文字を漢字であるか否か...
-
ArrayListからBean配列に値をセ...
-
Java配列の問題を教えてくださ...
-
ランダムでのboolean値の与え方
-
配列で、値の入っている要素数...
-
strutsで2次元配列をやりとりす...
-
java StringとString[]の違い
-
javaでEUC-JP文字列→UTF-8への変換
おすすめ情報