Rad*_*dek 6 java variadic-functions
我有一个方法
public boolean findANDsetText (String Description, String ... extra ) {
Run Code Online (Sandbox Code Playgroud)
在里面我想调用另一个方法并传递它,extras但我想添加新的元素(描述)到额外的.
object_for_text = getObject(find_arguments,extra);
Run Code Online (Sandbox Code Playgroud)
我怎么能在java中这样做?代码会是什么样的?
我厌倦了容纳这个问题的代码,但无法使其工作.
Jon*_*len 12
为了扩展这里的一些其他答案,可以更快地完成阵列复制
String[] newArr = new String[extra.length + 1];
System.arraycopy(extra, 0, newArr, 0, extra.length);
newArr[extra.length] = Description;
Run Code Online (Sandbox Code Playgroud)
使用Arrays.copyOf(...):
String[] extra2 = Arrays.copyOf(extra, extra.length+1);
extra2[extra.length] = description;
object_for_text = getObject(find_arguments,extra2);
Run Code Online (Sandbox Code Playgroud)
extra只是一个String数组。像这样:
List<String> extrasList = Arrays.asList(extra);
extrasList.add(description);
getObject(find_arguments, extrasList.toArray());
Run Code Online (Sandbox Code Playgroud)
您可能需要弄乱extrasList.toArray().
你可以更快但更详细:
String[] extraWithDescription = new String[extra.length + 1];
int i = 0;
for(; i < extra.length; ++i) {
extraWithDescription[i] = extra[i];
}
extraWithDescription[i] = description;
getObject(find_arguments, extraWithDescription);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6287 次 |
| 最近记录: |