【java學習】控制執行流程
1,for迴圈
1.1 for執行順序
for(表示式1;表示式2;表示式3){
}
先執行表示式1–>然後執行表示式2,如果為false,結束迴圈,否則執行迴圈體–>執行表示式3
1.2 foreach迴圈
for(Object item : ObjectList){
}
1.3 迴圈效率比較
在 JDK1.5 之後,至少有三種遍歷的方式:ForEach、迭代器、for迴圈。
直接for迴圈效率最高,其次是迭代器和 ForEach操作。
對於集合,ArrayList手寫的迴圈比增強型for迴圈更快,其他的集合沒有這種情況。因此預設情況下使用增強型for迴圈,而遍歷ArrayList使用傳統的迴圈方式。
作為語法糖,其實 ForEach 編譯成 位元組碼之後,使用的是迭代器實現的,反編譯後,testForEach方法如下:
public static void testForEach(List list) {
for (Iterator iterator = list.iterator(); iterator.hasNext();) {
Object t = iterator.next();
Object obj = t;
}
}
//可以看到,只比迭代器遍歷多了生成中間變數這一步,因為效能也略微下降了一些。
2,while迴圈
2.1 while執行順序
while(表示式1){
表示式2;
}
每次迴圈,先執行表示式1,再執行表示式2.
2.2 do-while執行順序
do{
表示式1;
}while(表示式2);
每次迴圈,先執行表示式1,再執行表示式2.
3,return,break,continue
只有一點需要注意,break和continue是對當前迴圈進行控制,多層迴圈也只能跳出當前迴圈。
4,switch
switch(m){
case 1:
case 2:
default:
}
4.1 break
只需要注意一點,沒有break,會依次執行後續的case和default。
4.2 支援型別
byte、short、char、int (Java 5以前);
enum列舉型別(Java5);
字串(String)(Java 7)。
長整型(long)在目前所有的版本中都是不可以的。
相關文章
- Java多執行緒學習(2)執行緒控制Java執行緒
- Java學習之流程控制Java
- Java學習之流程控制練習Java
- Java基礎學習總結(121)——Java JVM執行流程JavaJVM
- Spark學習(一)——執行模式與執行流程Spark模式
- JAVA學習腳印3: java語言控制流程Java
- java 執行緒學習Java執行緒
- java執行緒學習Java執行緒
- Linux學習--執行緒控制Linux執行緒
- Shell學習【流程控制】
- Java多執行緒學習Java執行緒
- Java 執行緒池學習Java執行緒
- 流程控制與陣列—Java基礎學習(二)陣列Java
- java的執行流程(轉)Java
- Java多執行緒學習——執行緒通訊Java執行緒
- Java 多執行緒NIO學習Java執行緒
- Java多執行緒(學習篇)Java執行緒
- Mybatis執行流程學習之手寫mybatis雛形MyBatis
- Java多執行緒學習(一)Java多執行緒入門Java執行緒
- #大學#Java多執行緒學習02(執行緒同步)Java執行緒
- 第四章 控制執行流程
- Java控制流程Java
- 關於java的執行流程Java
- PHP直譯器引擎執行流程 - [ PHP核心學習 ]PHP
- 【java學習】ThreadPoolExecutor 執行緒池Javathread執行緒
- Java 多執行緒學習筆記Java執行緒筆記
- 重新學習Java執行緒原語Java執行緒
- java學習筆記--多執行緒Java筆記執行緒
- Java學習筆記之執行緒Java筆記執行緒
- java多執行緒學習小案例Java執行緒
- Java學習(28)—(執行緒的控制/生命週期/解決安全問題)Java執行緒
- java-執行 java 控制檯程式Java
- Java後端學習流程Java後端
- java執行緒學習5——執行緒同步之同步方法Java執行緒
- Java多執行緒學習(3)執行緒同步與執行緒通訊Java執行緒
- 零基礎學Java(6)控制流程Java
- Activiti 學習筆記六:流程執行歷史記錄筆記
- Sermant執行流程學習筆記,速來抄作業筆記