【问题标题】:Java 7: Cannot cast from Object to int etcJava 7:无法从 Object 转换为 int 等
【发布时间】:2013-06-10 19:18:32
【问题描述】:

我在 Eclipse 3.6 (Helios) 中运行某人的代码时遇到问题。代码是用 OpenJDK 7 编写的。我运行的是 Windows 7,我必须为它安装 Java 7。我之前使用的是 Java 6。运行代码时出现 2 种错误:

  1. “不能从 Object 转换为 int”(又名:double、long、boolean)
  2. “无法实例化类型HashSet<?>

我读到像“(int) obj”这样的强制转换只能在 Java 7 中使用。在 Java 6 中,它必须是“(Integer) obj”。但是我将“JRE 系统库”设置为 JRE7,但仍然出现该错误。它仍然以某种方式使用 JRE6 吗?

第二个问题是由“Set set; set = new HashSet()”引起的。如果将HashSet<>() 替换为HashSet<String>(),问题就消失了。这是 Java 7 的另一个变化吗?为什么它不适用于我的 JRE7?我的 Eclipse 是否太旧,只能运行 JRE6?

提前致谢, 托本

【问题讨论】:

    标签: casting java-7 instantiation eclipse-3.6


    【解决方案1】:

    您正在描述 Java 7 编译器中的新功能。

    您需要使用 Java 7 编译器,以及任何版本的 JRE。

    【讨论】:

    • 谢谢!你是对的。 Eclipse中的Java编译器设置为1.6,不能设置为1.7。我想安装一个新的 Eclipse 应该会有所帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-20
    • 1970-01-01
    相关资源
    最近更新 更多