问题标签 [unchecked-cast]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
7278 浏览

java - 未经检查的演员表:'java.io.Serializable' 到 'java.util.ArrayList'

我收到未经检查的演员表警告,我不确定抑制它是否安全。

我在ArrayList<Fragment>里面放一个Bundle. 然后将此捆绑包放入我的意图中,如下所示:

然后在我的新活动(MySecondActivity)中,我使用以下代码检索这些数据:

我的编译器给了我以下警告:

“未经检查的演员:'java.io.Serializable'到'java.util.ArrayList'”

一切都很好,我可以说我可以安全地压制它吗?

谢谢!

0 投票
0 回答
215 浏览

generics - Eclipse 通用警告:类型安全:从 T 到 E 的未经检查的转换

如何避免以下代码中的一般警告?Eclipse 通用警告:类型安全:从 T 到 E 的未经检查的转换

有没有办法改进这段代码。只是从堆栈中放置和删除值。

0 投票
2 回答
1434 浏览

java - 我应该如何处理条件.list() 的未经检查的强制转换?

我有一个返回字符串列表的条件List<String>

我有以下方法

但是代码显示

为了避免添加@SuppressWarnings("unchecked") 并确保类型被安全转换(不确定我是否应该这样做),我阅读了这个问题并尝试将解决方案添加到我的代码中

但它显示另一个错误如下:

  • 我不知道我是否真的应该使用 Collections.checkedList
  • 如果我应该使用它,那么如何使用它?

谢谢

0 投票
2 回答
289 浏览

java - 为什么以下代码不会导致“未经检查的演员表”警告?

我认为这(String)x是未经检查的强制转换,但编译器没有给出任何警告。为什么会这样?

0 投票
1 回答
1011 浏览

java - Java - 使用 WatchEvent 抑制未经检查的强制转换警告是否安全?

我有以下测试代码:

编译器unchecked cast发出与该行相关的警告

因为作为 a 出现event,编译器无法判断在运行时它是否真的包含 a ,而不是其他东西。key.pollEvents()WatchEvent<?>Path

关于这一点,我想知道是否有可能在不明确禁止它的情况下摆脱这个警告。我发现了一些提示,虽然与完全不同的情况有关,比如this,但在这里他们似乎可以控制通用列表的构建方式,而在我的情况下这是不可能的。

我也发现了这一点,他们建议抑制警告,同时检查实际类型是否正确(因为编译器不能自己做),但我无法做到在我的情况下这些行。是否可以?你会怎么做?

另一方面,在我的例子中,我是WatchEvent从一个WatchService注册的Path对象中得到这些的:仅这个事实就足以证明每WatchEvent<?>一个由此而来的WatchService<?>都会有一个Path类型实现吗?如果这是真的,我可以安全地假设演员表总是正确的并抑制警告吗?在这种情况下,有没有办法避免它而不抑制它?

非常感谢你。

编辑

我本可以立即检查明确指出的参考文献:

上下文()

返回事件的上下文。

在 ENTRY_CREATE、ENTRY_DELETE 和 ENTRY_MODIFY 事件的情况下,上下文是一个 Path,它是向监视服务注册的目录与创建、删除或修改的条目之间的相对路径。

所以就我而言,我正在关注ENTRY_MODIFY事件,因此我的T类型绝对是Path.

0 投票
1 回答
89 浏览

java - 为什么“来自...的未经检查的演员表”

我不明白为什么我会得到一个,Unchecked cast from Object to Compareable<Object>因为它位于仅输入的区域内,如果实例是可比较类型的话。有人可以向我解释一下,也许可以给出解决方案,谢谢。

我的代码看起来像这样。问题出在第 8 行和第 9 行:

0 投票
2 回答
2391 浏览

java - Java 反射:(Type) field.get(object) - 未经检查的强制转换

以下代码使用反射 API 检索字段的值。正如您在提供的图像中看到的,这会生成未经检查的强制转换警告。可以使用@SuppressWarnings("unchecked")抑制警告。我想知道是否有替代方法?

更新: KeyType 是通用的。所以KeyType.class.cast(object); 由于类型擦除而无法工作。

未经检查的演员表警告


解决方案:似乎SuppressWarnings注释是要走的路……谢谢你们的时间。

解决方案

0 投票
4 回答
2349 浏览

java - 未经检查强制转换为实现 Map 的泛型类

我试图理解为什么这段代码有一个未经检查的强制转换警告。前两个演员没有警告,但第三个:

这是stringMap3演员的完整警告:

类型安全:未经检查的转换从Map<capture#3-of ?,Integer>StringMap<Integer>

但是,StringMap类声明指定了Map(ie, ) 的第一个类型参数,并且String两者都使用相同的类型作为(ie, )的第二个类型参数。据我了解,只要演员不抛出(并且不应该因为有检查),就会是有效的.map3StringMap<Integer>MapIntegerClassCastExceptioninstanceofstringMap3Map<String, Integer>

这是Java编译器的限制吗?ClassCastException或者是否存在这样一种情况,如果忽略警告,使用某些参数调用 map3 或 stringMap3 的方法可能会导致意外?

0 投票
2 回答
313 浏览

java - 带有提供特定返回值的抽象方法的未经检查的强制转换警告

我正在为具有非常标准页面的应用程序编写 selenium 测试,该页面可以很容易地通过通用结构建模为页面的基础,只有少数基本类型(主要是包含记录列表的列表页面,并编辑页面一个人可以编辑一个记录)。为了对此建模,我有这两个类:

我想知道是否有解决此问题的好方法,我错过了什么?我目前没有任何问题,但是我的测试代码中的警告让我感觉有点不确定。

这里使用泛型的原因是我可以在我的页面上对元素进行建模,以流畅的方式返回它们所属的页面:

0 投票
1 回答
2781 浏览

java - IntelliJ 中不适当的“未经检查的分配”警告

我有一句话说

和 IntelliJ 警告我

但是,被调用的方法说:

所以我在这里看不到任何未经检查的演员表。

https://docs.sencha.com/gxt/javadoc/com/sencha/gxt/widget/core/client/grid/filters/Filter.html https://docs.sencha.com/gxt/javadoc/com/sencha /gxt/data/shared/loader/FilterConfig.html