如果第一次調用someMethod時未明確表示它是String [],那麼該如何進行編譯?參數列表中的Java數組初始化
使用數組初始值設定項可以創建一個String []數組,但不能用它來傳遞參數。是否以其他方式使用花括號來傳遞參數,這些參數會影響我的預期行爲?
public void someMethod(String[] arr){
//do some magic
}
public void makeSomeMagic(){
String[] arr = {"cat", "fish", "cow"};
//Does not compile!
someMethod({"cat", "fish", "cow"});
//This compiles!
someMethod(new String[]{"cat", "fish", "cow"});
//This compiles!
someMethod(arr);
}
編譯器錯誤是:
的方法,在所述類型的someMethod(字符串[])武不適用於參數(字符串,字符串,字符串)
它只允許在聲明時間。這是一個語法的東西 – 2010-12-14 20:31:51