我正在尝试在方法调用中声明一个字符串数组,如下所示:
if (emailYaml.keySet().containsAll(new String[]{"mailto","subject","text"}))
我不完全确定这是否是最好的方法(我是编程新手),但无论如何 Eclipse 告诉我:
The method containsAll(Collection<?>) in the type Set<String> is not applicable for the arguments (String[])
谁能帮忙解决一下?
非常感谢
最佳答案
数组不是Collection
的子类型。例如,在将其传递给 containsAll
之前,将其转换为 List
:
.containsAll(Arrays.asList(new String[] {"mailto", "subject", "text"}))
或者更简单,因为 asList
将可变参数作为参数:
.containsAll(Arrays.asList("mailto", "subject", "text"))
关于Java 在方法调用中声明一个 String 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15006416/