![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_01.png?8acaa2e)
以下のようにしてjavaファイルを作成したのですが、eclipse(3.2)では、「配列定数は、イニシャライザーにおいてのみ使用可能です。」というメッセージが表示されてしまいます。下線は、mapの値全体({{1,1,以下)に表示されています。これに対策するにはどうすればよいのでしょうか?
package map;
import...(略)
public class MapData extends Setting{
int[][] map;
int HotelRoom = 1;
public MapData(int mapname){
switch(mapname){
case HotelRoom:
int[][] map = new int[15][15];
map = { {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1} };
}
}
}
mapフィールドの宣言をコンストラクタ内で行うと、エラーは出ないのですが、このフィールドは別のクラスでも使うので、それではダメなのです・・・。
情報が少なくて恐縮なのですが、必要に応じて後から補足させていただきますので・・・。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
map = { {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1} };
って使い方はできません。
int map[][] = { {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1} };
として使います。
なので、
package map;
import...(略)
public class MapData extends Setting{
private int[][] bufMap = { {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,1},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
};
public int[][] map;
public int HotelRoom = 1;
public MapData(int mapname){
switch(mapname){
case HotelRoom:
map = bufMap;
}
}
}
ってのでどうでしょう?
No.1
- 回答日時:
>このフィールドは別のクラスでも使うので、それではダメなのです・・・。
ここの意味がよくわかりません。
class MapData にフィールドとして宣言されている int[][] map と
MapData のコンストラクタで宣言されているローカル変数 int[][] map は別物なんですよね?
そしてクラス変数を別のクラスでも使うとは?
ご回答ありがとうございます。
すみません、コンストラクタ内のint[][] mapは消し忘れでした。
別のクラスで使うというのは、別のクラスに継承して使うということです。(別にclass Map extends MapData{...というのがあるのです)
色々わかりにくくてすみませんです・・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java javaでのプログラム(配列)について質問です. 2 2022/10/14 22:27
- Java Java 配列<選挙> 4 2023/07/31 15:07
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- その他(プログラミング・Web制作) pythonのmap、結果の利用は1度だけ? 5 2022/06/11 12:33
- C言語・C++・C# C言語の課題が出たのですが自力でやっても分かりませんでした。 要素数がnであるint型の配列v2の並 3 2022/11/19 17:41
- Java Java・配列の問題です。 int 「」nums = new int「5」 ⤴︎ この5の事を言葉で 2 2023/06/21 22:30
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
- C言語・C++・C# このプログラミングの問題を教えて欲しいです。 キーボードから整数kを入力し、kが配列aの中に何個存在 2 2022/12/19 22:50
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
このQ&Aを見た人はこんなQ&Aも見ています
-
「どうして捨てられないの?」前妻の物を捨てられない男性の心理って?
前妻の物を捨てられない理由に加え、捨てるための手段はあるのかを専門家に聞いてみた!
-
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
Eclipseで、プロジェクト名のところに赤いバッテンのエラーマークが
Java
-
Eclipseでクラスファイルが生成されない
Java
-
-
4
servletからjspへオブジェクトの配列情報を送る方法
Java
-
5
System.err. printlnとSystem.out.printlnはどう違うんでしょうか?
Java
-
6
CSVファイルの中で、「 , 」カンマを使いたい
その他(コンピューター・テクノロジー)
-
7
count(*)で取得した値をJAVAの変数に代入するには?
Java
-
8
timestamp が空のデータを除いて、データを選択したい
PostgreSQL
-
9
IOException ってどういうときに起こるのでしょうか?
Java
-
10
MySQLでデータベースにデータinsert時のエラー。
Java
-
11
java eclipse 型に解決できません
Java
-
12
Path型をString型へ変換する(Java)
Java
-
13
Eclipseのアンインストールの仕方
Java
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
メンバ関数のconst
-
JUnit4のアノテーションについて
-
Javaの基礎のプログラム
-
画像が表示されません。
-
Dateクラスへ格納
-
初心者です。JScrollPane につ...
-
Java 初心者 int型の取り扱い方
-
eclipseに記述したjavaファイル...
-
C# 半角カナの文字化けについて
-
【JAVAエラー】互換性のない型...
-
Javaで文字と数字が混ざったも...
-
ハートマークを表示するには?
-
0~9まで入力させ、前に入力さ...
-
System.out.printlnの出力先
-
配列への文字列の格納について
-
C言語のポインターに関する警告
-
JSPでDBからデータ読み込みブラ...
-
パソコンキーボードで時分秒を...
-
nullcline
-
エクセルの配列定数について教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「配列定数は、イニシャライザ...
-
Javaで電卓を作りたい
-
式の型は配列型で int に解決済...
-
javaでカレンダー作成
-
java spring でエラーが出て困...
-
JAVAでCの関数ポインタのような...
-
JAVA エラー 式の開始が不正で...
-
6桁の数字を重複なしでランダム...
-
c# デリゲート関連の命名について
-
C++からC#のdllを参照する際、...
-
メインが含まれていません
-
(Swing)JTextFieldを半角のみ入...
-
DataSet(DataTable)の使い方
-
三目並べ(Tick-Tack-Toe)をJav...
-
JUnit4のアノテーションについて
-
初心者ですが、今javaで簡単な...
-
classを使って座標軸を求めるコ...
-
javaでcsvファイル読込時の改行...
-
C#で実行時にメソッドの返り値...
-
Java 初心者 int型の取り扱い方
おすすめ情報