gpt4 book ai didi

java - @SuppressWarnings 用于调用带有未转换 null 的可变参数

转载 作者:行者123 更新时间:2023-12-02 07:09:25 26 4
gpt4 key购买 nike

我应该在 @SuppressWarnings("....") 中使用什么字符串来删除在带有可变参数的方法的单元测试中收到的警告:

/**
* Calling {@link #readFiles(String, String...)} with just one arg and a null
* works, but you have to do a null check on the varargs in case it is null.
*/
@Test
public void callMethodWithOneArgAndNull() {
readFiles("C:/Temp", null);
}

Eclipse 对此给出以下警告:

The argument of type null should explicitly be cast to String[] for the invocation of the varargs method readFiles(String, String...) from type TestVarArgs. It could alternatively be cast to String for a varargs invocation

这很好;这是预期的。我还在单元测试当我强制转换 null 时会发生什么。

但是为了这个单一测试的目的,我想抑制该特定警告,即我不想使用@SuppressWarnings("all")。我已经尝试了 this answer 中提到的每个字符串至 What is the list of valid @SuppressWarnings warning names in Java?他们似乎都没有注意到这个警告。

最佳答案

据我了解,这不是一个可以通过特定注释抑制的警告。您必须进行显式转换才能使警告消失 - 或抑制所有警告。

此外,请考虑测试两种可能的转换,即 (String[]) {null}(String) null,以确保您的方法不会阻塞“无文件”或“空文件名”输入。

关于java - @SuppressWarnings 用于调用带有未转换 null 的可变参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15720554/

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