Re: [問題] 請問有關for的使用問題
※ 引述《seruze (seruze)》之銘言:
: public class Main
: {
: private enum Seasons { winter, spring, summer, fall }
: public static void main(String[] args)
: {
: for (Seasons s : Seasons.values())
: {
: System.out.println(s);
: }
: }
: }
: 今天想學習java的Enum功能~於是找了相關的使用例子如上;
: 但我看到了一個for的使用方法,不明白詳細的規則:
: for (Seasons s : Seasons.values())
: 請問這一句是怎樣的含意呢?
: 用「:」符號又是什麼功能呢?
: 希望各位先進能指點一二~感謝。
JDK5 新加的語法.
for (T a: b) {
// do something
}
當 b 為 Collection<T> 或 T[] 時可以這樣寫.
Collection<T> 的情況其實 compiler 為你轉為:
for(Iterator<T> itr=b.iterator(); itr.hasNext();) {
T a = itr.next();
// do something
}
當 b 是 T[] 則為你轉為:
for (int i = 0; i < b.length; ++i) {
T a = b[i];
// do something
}
alien
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 202.155.236.82
※ 編輯: adrianshum 來自: 202.155.236.82 (05/23 12:19)
→
05/23 13:06, , 1F
05/23 13:06, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):