Java 串联变量参数列表

Java 串联变量参数列表,java,concatenation,java-7,variadic-functions,Java,Concatenation,Java 7,Variadic Functions,我想在字符串变量列表前面加上字符串参数 public String myMethod(String... args) { return myOtherMethod("some string" + args); } 现在,这当然行不通,因为您不能将这两种类型添加为相同的类型。如何在列表开头插入此字符串,然后调用myOtherMethod() 编辑:myOtherMethod()将另一个字符串…作为其参数。我也仅限于Java 7。没有办法创建新的字符串[],如下所示: public Str

我想在
字符串
变量列表前面加上
字符串
参数

public String myMethod(String... args) {
    return myOtherMethod("some string" + args);
}
现在,这当然行不通,因为您不能将这两种类型添加为相同的类型。如何在列表开头插入此字符串,然后调用
myOtherMethod()


编辑:
myOtherMethod()
将另一个
字符串…
作为其参数。我也仅限于Java 7。

没有办法创建新的
字符串[]
,如下所示:

public String myMethod(String... args) {
  String[] concatenatedArray = new String[args.length + 1];
  concatenatedArray[0] = "other string";
  for (int i = 0; i < args.length; i++) { // or System.arraycopy...
    concatenatedArray[i + 1] = args[i];
  }
  return myOtherMethod(concatenatedArray);
}

myOtherMethod
的类型是什么?它是否接受另一个
字符串…
?只有一个
String
?它是另一个
String…
,因此您只需要创建一个新数组,将
“some String”
作为第一个元素,对吗?是否要从myOtherMethod返回大的连接字符串?您还可以使用
System.arraycopy(args,0,concatedArray,1,concatedArray.length-1)而不是使用
进行
。是的。(正如我在评论中提到的。)
return myOtherMethod(ObjectArrays.concat("other string", args));