3 回答

TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超4個(gè)贊
什么是list?
public static void print(list) {
for (String word : list) {
System.out.println( word );
}
}
在面向?qū)ο缶幊痰纳舷挛闹?,假設(shè)一個(gè)外部類想要使用此方法。它會(huì)在這里傳遞什么?這里能傳入什么?它怎么會(huì)知道?
從根本上說(shuō),您對(duì)variables和parameters之間的區(qū)別感到困惑。兩者都必須是類型的,因?yàn)?Java 是一種強(qiáng)類型語(yǔ)言,但兩者都不一定相互關(guān)聯(lián)。您可以使用與稍后聲明的變量名稱相同的參數(shù)以提高可讀性,但沒(méi)有其他規(guī)定為此在任何地方設(shè)置。
為了說(shuō)明這一點(diǎn),這里再次使用相同的方法:
public static void print(ArrayList<String> l) {
for (String word : l) {
System.out.println( word );
}
}
參數(shù)的名稱無(wú)關(guān)緊要,只要輸入的是。

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊
Java 是一種強(qiáng)靜態(tài)類型語(yǔ)言,它要求您聲明該方法接受的類型。如果您不希望該方法接受任何類型的列表,您可以這樣做:
// this method can accept an ArrayList, LinkedList, etc
public static void print(List<String> list) {
for (String word : list) {
System.out.println( word );
}
}
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
list.add("Java");
list.add("Python");
list.add("Ruby");
list.add("C++");
print(list);
}
添加回答
舉報(bào)