我有一个构造函数,需要将字符串的vararg作为参数。
我需要分离这些字符串并将其添加到ArrayList中,该部分将完成我的方法。

这是代码:

private ArrayList<String> answers = new ArrayList<>();
private int index;

public Text(String ... str)
{
    separateVararg(); // How to pass vararg in here
}


如何将此vararg从构造函数作为参数传递给方法?

最佳答案

vararg只是一种方便的语法,可以像Text()Text("a")Text("a", "b")这样调用它。
在该方法中,它实质上是String[]
因此,如果您需要它作为列表,只需执行Arrays.asList(str)
要将除重复项之外的所有重复项添加到您的answers列表中,只需使用中间Set之类的answers.addAll(new HashSet<>(Arrays.asList(str)));
要遍历元素并进行单独检查,只需在str数组上使用for-each循环,或在Set上使用for-each循环(如果要消除重复项)。

关于java - 如何将vararg作为参数传递给方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36551223/

10-09 19:27