Eclipse null分析:int类型的表达式需要未经检查的转换以符合’@Nonnull Integer’
配置Eclipse 4.2.0以执行空分析(配置为使用@javax.annotation.Nonnull
等)时,以下代码将生成警告
空类型安全:int类型的表达式需要未经检查的转换以符合’@Nonnull Integer’
class C { static void foo(int i) { bar(i); // Warning } static void bar(@javax.annotation.Nonnull Integer i) { } }
我该如何解决这个问题(不使用@SuppressWarnings("null")
)? 似乎分析器不知道盒装基元不能为null
。
我认为这是Eclipse中的一个错误。 我尝试使用IntelliJ,它在那里按预期工作。
当我传递Null时,IntelliJ正确告诉我不允许空值。
但是,当我使用普通的i变量时,没有错误弹出,这是非常正确的。
我甚至试过这个,仅仅是为了实验,所以我不确定你是否坚持使用Eclipse,否则我建议使用免费的Community版 IntelliJ或Ultimate版 。