###質問内容
Javaを学んで2ヶ月です。
LinkedListでFIFOのリストを作成しているのですが、offerメソッドを呼び出そうとすると**「エラー:シンボルを見つけられません」**と出てきます。
・書き換えてaddメソッドを呼び出すと、問題なくコンパイルできるので、使用する変数の間違いや入力ミス、オブジェクトの生成ミス、クラスの読み込みミスではなさそう。
・APIを見る限り、同じboolean型の戻り値で、public、引数も「E e」で保持される要素の型なので、addとoffer間で、大きく記述方法が違うということもなさそう。
大変初歩的なエラーメッセージだという認識はあるのですが、上記のような状態のため、原因の見当がつきません。
エラーが発生している原因、addメソッドは呼び出せるのにofferメソッドではエラーになる原因について、ご教示いただきたいです。
###コード内容
java
1import java.util.LinkedList; 2import java.util.List; 3public class Hoge{ 4 public static void main(String[] args){ 5 int i = 1; 6 HogeHoge hogehoge = new HogeHoge(null,0); 7 List<HogeHoge> hoge = new LinkedList<HogeHoge>(); 8 List<Integer> hogeNumber = new LinkedList<Integer>(); 9 //中略 10 if(hoge.offer(hogehoge)){ 11 //hoge.add(hogehoge)ならコンパイル、実行成功 12 hogeNumber.offer(i); 13 //hogeNumber.add(i);ならコンパイル、実行成功 14 System.out.println("hogehoge:「" + i + "」"); 15 i++; 16 } else { 17 System.out.println("これ以上追加できません"); 18 } 19} 20 21public class HogeHoge{ 22 //省略 23 HogeHoge(){ 24 this(null,0); 25 } 26 HogeHoge(String x,int y){ 27 } 28 //後略 29}
###エラーメッセージ
Hoge.java:xx:エラー:シンボルを見つけられません if(hoge.offer(hoge)){ シンボル: メソッド offer(HogeHoge) 場所: タイプList<HogeHoge>の変数 hogehoge Hoge.java:xx:エラー:シンボルを見つけられません hogeNumber.offer(i); シンボル: メソッド offer(int) 場所: タイプList<Integer>の変数 hogeNumber エラー2個
###その他
サクラエディタを使用して、コマンドプロンプトで動かしています。
jdk1.8.0_121をインストールしてあります。
回答2件
あなたの回答
tips
プレビュー