Nan*_*mar 9 java arrays function
我想将字符串数组作为参数传递给函数.请看下面的代码
String[] stringArray = {'a', 'b', 'c', 'd', 'e'};
functionFoo(stringArray);
Run Code Online (Sandbox Code Playgroud)
代替:
functionFoo('a', 'b', 'c', 'd', 'e');
Run Code Online (Sandbox Code Playgroud)
但如果我这样做,我收到一个错误,说明转换String[]成String.我想知道是否可以传递这样的值或者正确的方法.
Jub*_*bal 23
怎么样:
public class test {
public static void someFunction(String[] strArray) {
// do something
}
public static void main(String[] args) {
String[] strArray = new String[]{"Foo","Bar","Baz"};
someFunction(strArray);
}
}
Run Code Online (Sandbox Code Playgroud)
以上所有答案都是正确的.但请注意,当您像这样传递时,您将传递对字符串数组的引用.如果对被调用函数中的数组进行任何修改,它也会反映在调用函数中.
Java中还有另一个称为变量参数的概念,您可以查看.它基本上是这样的.例如:-
String concat (String ... strings)
{
StringBuilder sb = new StringBuilder ();
for (int i = 0; i < strings.length; i++)
sb.append (strings [i]);
return sb.toString ();
}
Run Code Online (Sandbox Code Playgroud)
在这里,我们可以调用函数,如concat(a,b,c,d)或任意数量的参数.
更多信息:http://today.java.net/pub/a/today/2004/04/19/varargs.html
| 归档时间: |
|
| 查看次数: |
124743 次 |
| 最近记录: |