当前位置: 首页 > 知识库问答 >
问题:

使用For-Each循环时发生类型转换错误

麹高义
2023-03-14

我的for-each循环中出现了这个错误:

private static HashMap<Integer,Employee> employeeDatabase = new HashMap<Integer,Employee>();

public HashMap getEmployeeDatabase() {
    return employeeDatabase;
}

for(Employee e: c.getEmployeeDatabase().values()) 
    {
        e.print();
    }
Company c = new Company();

共有1个答案

国仰岳
2023-03-14

方法返回类型是raw类型。不要使用原始类型。

private static HashMap<Integer,Employee> employeeDatabase = new HashMap<Integer,Employee>();

public HashMap getEmployeeDatabase() {
    return employeeDatabase;
}

应该是像

private static Map<Integer, Employee> employeeDatabase = new HashMap<>();

public Map<Integer, Employee> getEmployeeDatabase() {
    return employeeDatabase;
}
 类似资料:
  • For Each循环用于为数组或集合中的每个元素执行语句或一组语句。 For Each循环类似于For循环; 但是,为数组或组中的每个元素执行循环。 因此,步进计数器将不存在于这种类型的循环中。 它主要用于数组或在File系统对象的上下文中使用,以便递归操作。 语法 (Syntax) 以下是VBA中For Each循环的语法。 For Each element In Group [state

  • 问题内容: 我有这个for-in循环: 现在,我希望将按钮强制转换为自定义类,以便可以使用其属性。 我尝试了这个: 但是它不起作用,给我一个错误: 我尝试了这个: 但是,这也不起作用。 问题答案: 对于 Swift 2 和更高版本: Swift 2 在 for 循环中添加了 大小写模式 ,这使得在 for 循环中进行类型转换更加容易和安全: 为什么这比您在 Swift 1.2 和更早版本中可以做的

  • 问题内容: 我遇到了非常奇怪的Java行为,但我不知道这是一个bug,还是我错过了一些东西。 该代码只需遍历stateStack(LinkedList)列表并销毁所有状态。 引发了以下异常: 该代码通常可以正常工作,并且已经投入生产一年多了。 这可能是Java错误吗? / 更新 / destroy()调用不会修改stateStack。如果可以的话,我猜Java会抛出ConcurrentModifi

  • 在上面的代码中,我根据天气与否计算每个指数,每个指数都是=到零。然而,它总是在foreach循环中运行false,在for循环中运行true。有人能解释一下幕后发生了什么让这一切发生吗? 我不是按顺序运行它们,它们都是为了演示目的。

  • 问题内容: 我在这里看到了答案,这些答案解释了如何告诉编译器循环中数组是某种类型的。 但是,Swift是否提供一种方法,使循环仅循环遍历数组中指定类型的项,而不崩溃或根本不执行循环? 问题答案: 您可以将for循环与case-pattern一起使用: 这将仅对数组中类型(或可以强制转换为)的那些项执行循环体。

  • 我有以下代码: 这段代码的目的是将旧的丹麦等级转换成新的等级,但问题是当使用< code>convert13to7函数时,我没有得到任何输出。有人看到这里的问题了吗?