- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:classで、何故かString型の配列が使えず。)
String型の配列が使えない理由
このQ&Aのポイント
- 質問者は、String型の配列が使えないエラーに遭遇しました。
- Javaのバージョンはjdk1.7.0です。
- エラーメッセージによると、コンパイルエラーが発生していますが、原因は不明です。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#147388
回答No.3
そのような場所で代入したいなら以下。 class Sample { String[] strArray = new String[10]; { strArray[0] = "あいうえお"; } } ただし、管理が煩雑になるのでコンストラクタに記載しましょう。
その他の回答 (2)
- yamada_g
- ベストアンサー率68% (258/374)
回答No.2
>基本型はOKなんですけど、 Ma-yan_bh1011さんの回答をなにか勘違いされているような気がします。 基本型にしろなんにしろ、そのような所では代入できません。 class Test { int i; i = 0; } とは書けませんよね? 記載のコードはこれと同様の記述をしています。 基本型も参照型も関係ありません。 配列の宣言と同時に値を入れたいなら、 String[] strArray = new String[]{"あいうえお","","","",""}; などとすればいいです。(new String[] はなくてもいいですが)
質問者
お礼
なるほどですね。
- ・真 綾・(@Ma-yan_bh1011)
- ベストアンサー率30% (79/257)
回答No.1
コンストラクタの中でもメソッドの中でもないから、かな。
質問者
お礼
ありがとうございます。 たしかに。基本型はOKなんですけど、 参照型は、コンストラクタ等が、必要みたいですね。
お礼
ありがとうございます! うれしいです!