2015-11-02 65 views
0

我試圖弄清楚實際調用的是什麼,以及在哪裏可以找到答案。我不明白差異在在Java中使用for循環進行迭代

for (Treet treet : treets) { } 

我不知道什麼是不同的「treet」的意思。有人可以幫我或至少告訴我它叫什麼嗎?

+2

問題標題不好。這是一個反對票和密切的問題投票磁鐵,所以請儘快更改。 –

+3

_Enhanced for statement_ –

+0

@Andy Turner,感謝您的編輯。 – Letholor

回答

2
for (Treet treet : treets) { } 

這是一個增強for語句(雖然通常被稱爲一個增強的for循環)。你說你想爲某些東西集合中的每一個元素做點什麼。 (實際上,你在這裏什麼都沒做,但是沒關係)。

英文:「對於Treet中的每個treets,請做點什麼」。

Treet是一種類型。某處需要定義名爲Treet的課程。如果它位於不同的包中,則需要導入它。

treets或者是一個Iterable<? extends Treet>,這意味着你可以調用treets.iterator()和標準hasNext()/next()方式使用結果;或者一系列延伸Treet的東西。這是你可以迭代的東西。

treet是來自iterable/array的單個元素。你只能在循環體內使用它。

+0

那麼,如果我用英語大聲說出來,它又會怎樣呢? – Letholor

+0

@Downvoter:謹慎解釋?我可以理解爲什麼一些新來的Java可能會感到困惑。 –

+0

謝謝安迪特納。我並沒有試圖成爲一個麻煩,我只是知道StackOverfow通常擁有一個人羣,他們理解並且對那些知識少於其他知識的人有幫助。感謝您的幫助。 – Letholor

0

那是一個forach循環,它遍歷數組/列表/ ...並執行循環中定義的動作到列表中由treet引用的每個元素。