gpt4 book ai didi

java - Eclipse 和未经检查的转换警告不应该出现

转载 作者:太空宇宙 更新时间:2023-11-04 07:41:42 25 4
gpt4 key购买 nike

收到警告的代码:

HashSet<MyBean> beanies = StatusUtil.getStatus(myBeanList);

它调用的方法:

public static HashSet<MyBean> getStatus(List<MyBean> servers){      
HashSet<MyBean> set = new HashSet<MyBean>();
return set;
}

是的,这就是 Eclipse 中的确切代码。我意识到这并不是大量信息,但在我看来,代码不应该产生警告。如果有帮助的话,那就是 Eclipse Indigo。清理项目没有任何作用。重新启动 Eclipse 不会执行任何操作。

编辑:我本来应该注意到Eclipse实际上说“类型HashSet的表达式需要未经检查的转换以符合HashSet<MyBean>”。所以它似乎意识到该方法被定义为 HashSet 但没有意识到我的返回变量也是如此......

最佳答案

这似乎是由于 Eclipse Indigo 错误造成的。当我在 Eclipse 中将默认工作区设置切换为使用 Java 7 作为编译器时,该错误首次出现。我删除了所有其他可能的 Java 编译器,这将强制所有项目使用 Java 7。这可以在 Project->Properties->Java Compiler 下找到。有一个链接显示配置工作区设置。此时所有单个项目都表示“合规级别”为 1.7,这正是我的预期。然而,直到我检查“启用项目特定设置”并将其设置为 Java 7 后,我的答案中提到的上述错误才消失。在我看来,这是一个错误,因为如果我设置为工作区默认编译器的只有一个可用编译器,并且我的项目没有启用项目特定设置,那么显然它应该使用该编译器。但是,启用项目特定设置使上述警告消息消失。

关于java - Eclipse 和未经检查的转换警告不应该出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15981008/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com