我知道這是一個基本的問題,但我閱讀文檔,似乎沒有回答我的問題:什麼是「:」運營商怎麼辦?使用「:」操作符
我得到的印象是,如果我這樣做for(item : list)
,for循環會經過一個列表的每一個項目。這是正確的嗎?
我知道這是一個基本的問題,但我閱讀文檔,似乎沒有回答我的問題:什麼是「:」運營商怎麼辦?使用「:」操作符
我得到的印象是,如果我這樣做for(item : list)
,for循環會經過一個列表的每一個項目。這是正確的嗎?
是的,你有什麼有一個爲每個語句。你有一個不是很正確,如果你有例如List<String>
叫列表,那麼你可以做這樣的事情:
for (String item: list) {
System.out.println(item);
}
順便也有另一種使用了「:」作爲三元的一部分表達,例如
int i = y < 0 ? 10 : 100;
這是一樣的:
int i;
if (y < 0) {
i = 10;
} else {
i = 100;
}
是的,這是正確的。這不是一個真正的運營商如此 - 這是這是在Java 5中
是引進的語法爲enhanced for loop的一部分。如果你有一個迭代的對象,你可以這樣做:
for (Object o : iterableObj) {
o.doSomething();
}
這相當於(在功能)喜歡的東西:
for (int i = 0; i < iterableObj.length(); i++) {
Object o = iterableObj.get(i);
o.doSomething();
}
http://download.oracle.com/javase/1.5.0/docs/guide/language/foreach.html – CodesInChaos 2011-03-20 16:00:23
我不認爲有一個單獨的':'運算符。我認爲它是'for'語句語法的一部分。 – CodesInChaos 2011-03-20 16:01:59
只是要完成:在trinaries也可使用。 a =(b> 0)? 4:3; – MeBigFatGuy 2011-03-20 16:57:01