以下は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で質問しましょう!
似たような質問が見つかりました
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- Java Java・配列の問題です。 int 「」nums = new int「5」 ⤴︎ この5の事を言葉で 2 2023/06/21 22:30
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- Java Java 配列<選挙> 4 2023/07/31 15:07
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
strutsでの配列の扱い方について。
-
配列をセッションに割り当てた後で
-
JavaBeansの配列の値取得方法に...
-
ページング
-
C#で動的配列Listの中身をListB...
-
【Ajax通信&Java】配列の受け取...
-
『args[]』とは?
-
C言語でunsigned char配列を連...
-
JSPでデータ一覧表示
-
C++で、Excelの内容を取得する...
-
Java配列の問題を教えてくださ...
-
この警告はどうすれば?
-
javamailで複数人にメールを送...
-
ResourceBundleのgetStringArra...
-
データベースから取得したデー...
-
負の整数になるまで入力→その平...
-
Javaで文字と数字が混ざったも...
-
Vectorがカラなら・・・
-
Eclipse による Java プログラ...
-
2次元配列でのiとjについて。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
n番目に大きな値を探索する
-
この警告はどうすれば?
-
[Ljava.lang.Stringってなんですか
-
Javaで文字を漢字であるか否か...
-
配列をセッションに割り当てた後で
-
配列の中に複数存在する数がい...
-
java
-
Javaで文字と数字が混ざったも...
-
C#で動的配列Listの中身をListB...
-
配列で、値の入っている要素数...
-
『args[]』とは?
-
【C#】ハッシュテーブル(連想...
-
ページング
-
セッションを使ったint型の値の...
-
配列について
-
同じ配列またはクラスを、2回...
-
ArrayListからBean配列に値をセ...
-
Java配列の問題を教えてくださ...
-
java 大文字と小文字を入れ替える
-
同じ文字を探しカウントしたい
おすすめ情報