Java中的原始类型
我正在阅读一本包含以下代码的教科书:Java中的原始类型,java,generics,Java,Generics,我正在阅读一本包含以下代码的教科书: Entry<K,V>[] tempTable = (Entry<K,V>[]) new Entry[size]; Entry[]tentable=(Entry[])新条目[size]; 当我使用-Xlint编译时,右边的条目缺少类型参数。但是,我不能添加类型参数,因为这将导致创建泛型数组。我想我的问题分为两部分: 我假设文本中的代码编译正确,那么我可以做些什么来保持原样 最优雅的方式是什么 您最好使用集合界面,列表来 1-使其更加
Entry<K,V>[] tempTable = (Entry<K,V>[]) new Entry[size];
Entry[]tentable=(Entry[])新条目[size];
当我使用-Xlint
编译时,右边的条目
缺少类型参数。但是,我不能添加类型参数,因为这将导致创建泛型数组。我想我的问题分为两部分:
您最好使用
集合
界面,列表
来
1-使其更加优雅,并且
2-摆脱警告
List<Entry<K, V>> tempTable = new ArrayList<>();
tempTable.add(new Entry<Integer, Double>()); // or whatever object.
List tentable=new ArrayList();
诱惑。添加(新条目());//或者别的什么东西。
我希望这能有所帮助。Entry[]tentable=(Entry[])新条目[size];
Entry<K,V>[] tempTable = (Entry<K,V>[]) new Entry<?,?>[size];
我想知道-Xlint是否有问题。我的编译器很好地接受了代码。(条目[])新条目[size]代码>不能确保类型安全。这只是一个强制转换操作。“我能做些什么让它工作”你是说你不能编译它吗?我真的不明白你要这个零件干什么。