gpt4 book ai didi

java - 删除有关未经检查的操作的编译时警告

转载 作者:行者123 更新时间:2023-12-02 05:53:46 25 4
gpt4 key购买 nike

以下行会导致编译时警告:

ArrayList<Integer> a = (ArrayList) b.clone();

创建:

Note: MyClass.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.

如何删除编译时警告? -Xlint:none 和 -nowarn 似乎没有帮助。

编辑:我不太关心类型安全;在代码的上下文中,我确信这些类型会起作用。我只是想抑制编译器警告。

最佳答案

您可以在此变量声明之前使用@SuppressWarnings("unchecked"),这应该有助于消除警告。

不幸的是,实际上没有一种方法可以以类型安全的方式进行克隆,您必须相信克隆方法实际上只返回新 ArrayList 中的整数。

如果您一般不希望出现此类编译器警告,则可以添加 -Xlint:-unchecked 来关闭有关未经检查的泛型转换的所有警告。不过,泛型的类型安全性已经完全消失了。

关于java - 删除有关未经检查的操作的编译时警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4928187/

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