我有一个构造函数,需要将字符串的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/