在我的主要方法中,我有以下命令:
if (args.length == 0) // if no command line argument is given
args.addAll(Arrays.asList("Hello","world"); // error
有一个错误说:
无法在数组类型String []
上调用addAll()
如何向args
添加多个元素?
答案 0 :(得分:4)
我猜你不能做这样的事情。要将元素附加到数组(不是ArrayList
或其他集合),请在旧数组中创建新数组和复制元素以及要追加的元素。
在这种情况下,您可以简单地为新数组分配默认元素,如下所示:
if (args.length == 0) // if no command line argument is given
args = new String[]{"Hello","world"};
答案 1 :(得分:1)
您尝试调用的函数由List对象使用,而不是数组。 如果您想使用List,这在添加数据时更容易使用,请尝试:
List<String> list = new ArrayList<String>(Arrays.asList(args));
list.addAll(Arrays.asList("Hello","world"));
无论如何,这种方法都会发生。如果您只想在ags为空时附加它们,请使用
if (args.length == 0) // if no command line argument is given
{
List<String> list = new ArrayList<String>(Arrays.asList(args));
list.addAll(Arrays.asList("Hello","world"));
}