continue語(yǔ)句并沒(méi)有真的退出循環(huán)渔工,而是只結(jié)束本次循環(huán)的執(zhí)行抢腐,所以使用continue時(shí)要注意這一點(diǎn)旷档。
情景一
package com.spring_boot.guava;
import com.google.common.collect.Maps;
import java.util.Map;
/**
* Created by wanggs on 2017/9/28.
*/
public class BreakTest {
public static void main(String[] args) {
Map<String, Object> map = Maps.newHashMap();
map.put("1", 1);
map.put("2", 2);
map.put("3", 3);
map.put("4", 4);
map.put("5", 5);
for (String key : map.keySet()){
if (key.equals("3"))
continue;
System.out.println("key: " + key + "value: " + map.get(key));
}
System.out.println("結(jié)束...");
/**
* key: 1value: 1
key: 2value: 2
key: 4value: 4
key: 5value: 5
結(jié)束...
*/
}
}
情景二
for (String key : map.keySet()) {
if (key.equals("3"))
System.out.println("key: " + key + "value: " + map.get(key));
continue;
}
System.out.println("結(jié)束...");
/**
* key: 3value: 3
結(jié)束...
*/
break語(yǔ)句使用場(chǎng)合主要是switch語(yǔ)句和循環(huán)結(jié)構(gòu)。break語(yǔ)句严里,那么直接退出循環(huán)新啼,執(zhí)行循環(huán)結(jié)構(gòu)下面的第一條語(yǔ)句。如果在多重嵌套循環(huán)中使用break語(yǔ)句刹碾,當(dāng)執(zhí)行break語(yǔ)句時(shí)燥撞,退出的是它所在的循環(huán)結(jié)構(gòu),對(duì)外層循環(huán)沒(méi)有影響迷帜。
情景一
for (String key : map.keySet()) {
if (key.equals("3"))
break;
System.out.println("key: " + key + "value: " + map.get(key));
}
System.out.println("結(jié)束...");
/**
* key: 1value: 1
key: 2value: 2
結(jié)束...
*/
情景二
for (String key : map.keySet()) {
if (key.equals("3"))
System.out.println("key: " + key + "value: " + map.get(key));
break;
}
System.out.println("結(jié)束...");
/**
結(jié)束...
*/
}
```---
> 如果在程序中遇到return語(yǔ)句物舒,那么戴拿就退出該函數(shù)的執(zhí)行,退回到函數(shù)的調(diào)用處戏锹,如果是main()函數(shù)冠胯,那么就結(jié)束整個(gè)程序的運(yùn)行
###### 情景一
for (String key : map.keySet()) {
if (key.equals("3"))
return;
System.out.println("key: " + key + "value: " + map.get(key));
}
System.out.println("結(jié)束...");
/**
key: 1value: 1
key: 2value: 2
*/
}
###### 情景二
for (String key : map.keySet()) {
if (key.equals("3"))
System.out.println("key: " + key + "value: " + map.get(key));
return;
}
System.out.println("結(jié)束...");
/**
直接退出
*/
}
###### 情景三無(wú)返回參數(shù)
package com.spring_boot.guava;
import com.google.common.collect.Maps;
import java.util.Map;
/**
-
Created by wanggs on 2017/9/28.
*/
public class BreakTest {
public static void main(String[] args) {console("3"); System.out.println("結(jié)束..."); /** 結(jié)束... */
}
private static void console(String key) {
if ("3".equals(key)) {
String result = System.currentTimeMillis() + "--->>" + key;
return;
}
System.out.println("測(cè)試");
}
}
---
> exit()函數(shù)和return語(yǔ)句的最大區(qū)別在于,調(diào)用exit函數(shù)將會(huì)結(jié)束當(dāng)前進(jìn)程锦针,同時(shí)刪除子進(jìn)程所占用的內(nèi)存空間荠察,把返回信息傳給父進(jìn)程。當(dāng)exit()中的參數(shù)為0時(shí)奈搜,表示正常退出悉盆,其他返回值表示非正常退出,執(zhí)行exit()函數(shù)意味著進(jìn)程結(jié)束