将哈希映射传递给函数-Java
代码: 当我尝试运行此代码时,收到以下错误:将哈希映射传递给函数-Java,java,hashmap,Java,Hashmap,代码: 当我尝试运行此代码时,收到以下错误: public void saveFile(HashMap hashTable) { for (Employee e : hashTable.values()) { //... } } 如有任何帮助,我们将不胜感激。如果地图的价值应为员工,请将签名更改为: incompatible types: Object cannot be converted to Employee for (
public void saveFile(HashMap hashTable) {
for (Employee e : hashTable.values()) {
//...
}
}
如有任何帮助,我们将不胜感激。如果地图的价值应为员工,请将签名更改为:
incompatible types: Object cannot be converted to Employee
for (Employee e : hashTable.values()) {
公共void保存文件(映射哈希表){
其中,键类型应替换为键的类型(可能是字符串或整数)
当您使用原始映射类型时,
hashTable.values()
将返回一个原始集合
,因此迭代它将为您提供对象
引用,而不是员工
引用。您使用了HashMap
的原始形式,因此hashTable.values()
返回原始集合
,该集合返回对象
s,该对象不能直接分配给员工
变量
使用HashMap
的通用形式,或者:
public void saveFile(Map<TheKeyType,Employee> hashTable) {
public void saveFile(HashMap<?, Employee> hashTable) {
public void saveFile(HashMap<YourKey, Employee> hashTable) {
public void saveFile(Map<YourKey, Employee> hashTable) {