问题标签 [unchecked-conversion]
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.
java - 为什么我会收到警告 [unchecked] unchecked conversion?
谁能指出我在以下陈述中遗漏了什么?
警告 1
警告 2
警告 3
帮我恢复这个警告。在此先
感谢 PC :- keep_smiling
java - 泛型方法执行隐式转换,而非泛型方法需要显式转换
这个问题与上一个问题有关。可以通过添加强制转换来进行未经检查的转换来解决原始问题。所以现在我有以下代码:
我的初衷是写一个泛型方法。所以我将方法概括foo2()
为:
这显然包含未经检查的转换,并带有适当的警告进行编译。但我没有getClass()
明确地将结果转换为Class<E>
. 由于foo1()
是泛型方法的一个实例foo3()
,我预计我也需要在这里添加演员表。比较... foo1()
_foo4()
...两者实际上相似(主要区别在于E1 e
参数foo1()
)。然而foo1()
编译,但foo4()
不编译。我觉得这很矛盾。是否有任何规则允许对泛型方法进行隐式转换?
java - 泛型的类型安全
我有一堆简单的接口:
和一个服务方法
调用服务方法
没有错误,但检查器说:
类型安全:类型 Country 的表达需要未经检查的转换才能符合 Country
我不明白:通过以 County 作为 L-LineType 调用服务方法,C 是 L 的容器,C 由 Country 作为 C-Type 给出,因此,我预计类型推断会得出结论,即 Country对象将被送达。
谁能解释一下,为什么我错了,我是否以及如何实现我想要的?
背景:这个想法是 - 作为服务的用户 - 我可以根据需要自由组合容器和线路(只要服务提供商可以提供这些服务)
java - List 的未经检查的转换警告
当我使用 -Xlint:unchecked 编译我的 java 代码时,在这一行:
我收到这个:
getHierarchyNodesParentFirst 定义为:
它不会在任何地方被覆盖,也不会覆盖任何东西。问题可能是什么?
java - 摆脱 Unchecked 覆盖:返回类型需要未经检查的转换
示例代码类似于我的代码。
在我的ClientClient
课堂上,我收到一条警告,内容如下:
Unchecked overriding: return type requires unchecked conversion.Found 'Builder<java.lang.String,java.lang.Integer>', required 'Builder<java.lang.String,A>
我能做些什么来摆脱这个错误吗?
我可以使用@SuppressWarnings("unchecked")
,但感觉不对。
在我的示例A
中始终是一个,Integer
但在我的真实代码A
中可以是两个对象之一。
我想我的界面中也可以有两种方法,如下所示:
java - 忽略警告的后果是什么:java中未经检查的转换
我知道为什么我会收到警告(即,将原始类型分配给参数化类型),但如果我忽略警告,我并不完全了解可能的序列。
java - 从 X 到扩展 X 的泛型类型的未经检查的强制转换
我的任务@SupressWarning
是在我们的代码库中删除尽可能多的 s,但我不确定如何解决这个特定问题。
我有这个返回对象的外部方法,以及我想将对象转换为Serializable
的泛型类型。T extends Serializable
这是代码的简化版本:
是否可以在不产生未经检查的强制转换警告的情况下执行此转换(假设无法更改外部方法)?
这是Java 8。
ada - 使用 Unchecked_Conversion 读取值并转换为自定义类型
从文件读取输入'Size
并'Component_Size
尝试使用Unchecked_Conversion
. 我知道要成功使用Unchecked_Conversion
Source 和 Target 需要相同size
。我正在从文件中读取输入,000100000101001
并希望使用 Unchecked Conversion 将其放入位数组中。但是,转换似乎总是失败,因为它们的大小不同或太小。
这是我的类型,位只能是 0 或 1size
到 1 位。Bit_Array 只是一个不受约束的位数组,因为我的输入可以是 15 位长或 11 位长。我的想法是将第一行读入字符串并将其转换为 Bit_Array。这不起作用,因为 String 和其他所有原始类型都不是Size => 1
. 所以很自然地,我想创建一个新类型来处理这个我尝试过的形式,创建我自己的字符串类型并设置size => 1
但字符需要 8 位。我需要创建什么数据类型来读取一行数据并将其转换为适合 Bit_Array?我可能正在接近这个错误,但它对我来说非常混乱。任何帮助或提示表示赞赏!
java - 列表和未经检查的转化
在尝试修复有关“类型安全:类型列表的表达式需要未经检查的转换以符合列表”的警告时。基本上获取对象列表并将其转换为 InventoryPDFAdapter 列表。
这是引发警告的代码
这是我的解决方案
有没有更优雅的方法来做到这一点,同时仍然避免警告?
ada - 禁止未经检查的转换的警告
我有这段代码:
其中 T_U8 是:
功能UC_Bool_To_U8
正在运行,但我在编译时出现警告:
警告:未经检查的转换类型具有不同的大小
警告:“布尔”的大小为 1,“T_U8”的大小为 8
警告:源将扩展 7 个高位零位
我怎样才能抑制这些警告?