前提・実現したいこと
map(連想配列)で、keyとvalueを入れて、適当なkeyからvalueを取り出せるかの実験を行おうとしていた。
発生している問題・エラーメッセージ
エラーメッセージ >javac Main.java Main.java:8: エラー: 不適合な型: HashMap<>の型引数を推論できません Map<Integer,String> map=new HashMap<>(); ^ 理由: 型変数K,Vのインスタンスが存在しないので、HashMap<K,V>はMap<Integer,String>に適合しません K,Vが型変数の場合: クラス HashMapで宣言されているKはObjectを拡張します クラス HashMapで宣言されているVはObjectを拡張します エラー1個
該当のソースコード
import java.util.*; public class Main{ public static void main(String args[]){ Scanner scanner=new Scanner(System.in); int number=scanner.nextInt(); int question=scanner.nextInt(); int x; Map<Integer,String> map=new HashMap<>(); for(x=0; x<number; x++){ map.put(scanner.nextInt(),scanner.next()); } for(x=0; x<question; x++){ System.out.println(map.get(scanner.nextInt())); } } }
試したこと
Map<Integer,String> map=new HashMap<Integer,String>();
としたときも、エラー発生。
>javac Main.java Main.java:8: エラー: 不適合な型: HashMap<Integer,String>をMap<Integer,String>に変換できません: Map<Integer,String> map=new HashMap<Integer,String>(); ^ エラー1個
java バージョン
>java -version java version "1.8.0_301" Java(TM) SE Runtime Environment (build 1.8.0_301-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)
Javaのバージョンはいくつですか?
>java -version
java version "1.8.0_301"
Java(TM) SE Runtime Environment (build 1.8.0_301-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.301-b09, mixed mode)
より、1.8.0_301のようです
回答1件
あなたの回答
tips
プレビュー