J2SE 5 0專題 2 2 增強的for迴圈

2021-03-31 15:26:27 字數 746 閱讀 3813

你是否已經厭倦了每次寫for迴圈時都要寫上那些機械的**,尤其當你需要遍歷陣列或者collection,如:

public voidshowall (collection c)

}public voidshowall (string sa)

}這 樣的**不僅顯得臃腫,而且容易出錯,(想想看如果我們不小心忘記移動iterator或者下標,又或者在迴圈體內不小心移動了下標,可能更糟:在迴圈體 內做了邏輯判斷,而進一步影響到下標或者iterator的位置,類似的例子可以舉出很多。)為什麼不能讓編譯器幫我們處理呢?在5.0中,我們可以這樣 寫:

public voidshowall (collection c)

}public voidshowall (string sa)

}這樣的**顯得更加清晰和簡潔,不是嗎?(是不是有點像c#的foreach?)加上泛型,我們甚至可以把第乙個方法變得更加漂亮:

public voidshowall (collectionc)

}有了泛型和增強的for迴圈,我們在大多數情況下已經不用去操心那些煩人的for迴圈的表示式和巢狀了。如下情況例外:當你需要在迴圈體中訪問iterator和下標時,比如當你需要去除或者修改集合或陣列中的元素。

有關增強的for迴圈更詳細的內容,參考

這裡。

J2SE 5 0專題 增強的for迴圈

你是否已經厭倦了每次寫for迴圈時都要寫上那些機械的 尤其當你需要遍歷陣列或者collection,如 public voidshowall collection c public voidshowall string sa 這樣的 不僅顯得臃腫,而且容易出錯,想想看如果我們不小心忘記移動itera...

J2SE 5 0專題 2 5 可變長度引數

顧名思義,可變長度引數就是指在方法的引數體中,只要定義恰當,我們可以使用任意數量的引數,類似於使用物件陣列。在j2se 5.0中,乙個新的語法被引入,就是在引數型別名稱後面加上 表示該方法可以接受多個該型別的引數。需要說明的是可變長度引數必須放在引數列表的最後,且乙個方法只能包含乙個這樣的引數。需要...

J2SE 5 0新特性(五)可變長引數

可變長引數是j2se5新入的乙個特性,故名思義就是可以建立數目可變的引數方法,簡稱varargs方法。需要將數目不定的引數傳遞給乙個方法的情況很常見,當然在這個新特性被引入之前,我們遇到這種情況通常情況下有兩種方案來解決 一 如果需要的引數數目不大而且可知,我們可採用過載的形式來滿足,每不同的引數建...