Java中goto實現方法
Java語言中goto是保留關鍵字,沒有goto語句,也沒有任何使用goto關鍵字的地方。下面YJBYS小編為大家整理了關於Java中goto實現方法,希望對你有所幫助。
Java中也可在特定情況下,通過特定的手段,來實現goto的功能。顯然Java不願意開發者隨意跳轉程序。下面解釋兩個特定:
特定情況:只有在循環體內,比如for、while語句(含do.……while語句)中。
特定手段:語句標籤和循環控制關鍵字break、continue,語法格式是:break/continue 語句標籤。
break、continue和語句標籤
1、語句標籤
語句標籤的語法是:標籤名:
語句標籤可以定義在方法體內的最後一條語句之前即可。但是語句標籤實際使用的機會是與break和continue結合使用的,而break和continue是和循環語句結合使用的.,因此實際上語句標籤的使用也是和循環緊密結合的。
語句標籤在被使用的情況,只能定義在循環迭代語句之前,否則編譯出錯!
因此,有意義、可使用的標籤含義是:指定循環語句的標識!
2、break、continue語句單獨使用
單獨使用情況下:break語句作用是結束當前的循環迭代體,進而執行剩餘的語句。
continue語句的作用是結束本次迭代過程,繼續執行下一輪迭代。
3、break、continue語句結合語句標籤的使用
為什麼需要語句標籤呢?
原因是因為程序可能有循環的嵌套,當多層循環嵌套時候,有時候需要一次跳出多級循環,這種情況下就需要結合語句標籤才能實現此功能了。
帶標籤使用情況下:break中斷並跳出標籤所指定循環,continue跳轉到標籤指定的循環處,並繼續執行該標籤所指定的循環。
為了説明情況,看看下面的例子:
import om;
/**
* 語句標籤測試
*
* @author leizhimin 2009-7-16 11:43:08
*/
public class TestLable {
public static void main(String[] args) {
outer:
for (int i = 0; i 《 10; i++) {
tln(“nouter_loop:” + i);
inner:
for (int k = 0; i 《 10; k++) {
t(k + “ ”);
int x = new Random()。nextInt(10);
if (x 》 7) {
t(“ 》》x == ” + x + “,結束inner循環,繼續迭代執行outer循環了!”);
continue outer;
}
if (x == 1) {
t(“ 》》x == 1,跳出並結束整個outer和inner循環!”);
break outer;
}
}
}
tln(“——》》》所有循環執行完畢!”);
}
}
執行結果:
outer_loop:0
0 1 2 3 4 5 6 7 8 9 》》x == 8,結束inner循環,繼續迭代執行outer循環了!
outer_loop:1
0 1 2 3 4 5 》》x == 9,結束inner循環,繼續迭代執行outer循環了!
outer_loop:2
0 1 2 3 4 5 6 7 8 9 》》x == 8,結束inner循環,繼續迭代執行outer循環了!
outer_loop:3
0 1 2 3 4 》》x == 9,結束inner循環,繼續迭代執行outer循環了!
outer_loop:4
0 1 2 3 4 5 6 7 8 9 10 》》x == 8,結束inner循環,繼續迭代執行outer循環了!
outer_loop:5
0 》》x == 1,跳出並結束整個outer和inner循環!——》》》所有循環執行完畢!
Process finished with exit code 0
-
2017年java考試模擬試題大綱
Sun公司在推出Java之際就將其作為一種開放的技術。全球數以萬計的Java開發公司被要求所設計的Java軟件必須相互兼容。下面是小編整理的關於java考試模擬試題,希望大家認真閲讀!1、編寫程序,計算下列分段函數的值。x?(x>=0)y=-x?(x<0)import.*;publicclasstesta{p...
-
高級Java面試題及答案2016
java高級面試有哪些常見問題呢?下面yjbys為大家分享最新java常見面試題及答案解析,僅供參考!什麼是可變參數?可變參數允許調用參數數量不同的方法。請看下面例子中的求和方法。此方法可以調用1個int參數,或2個int參數,或多個int參數。//int(type)followed...(thre...
-
JS控制html控件的方法
為了方便廣大計算機愛好者,下面YJBYS小編為大家整理了關於JS控制html控件的方法,希望對你有所幫助。方法一:《divid=myDiv》《/div》//容器varstrInnerHtml=《inputid=myInputtype=text》;//要添加的控件rHTML=strInnerHtml;//執行添加動作方法二:《divid=myDiv》...
-
2016年Java認證考試題
Java編程語言是個簡單、面向對象、分佈式、解釋性、健壯、安全與系統無關、可移植、高性能、多線程和靜態的語言。下面來看看java認證的考試題!1.在Java中,負責對字節代碼解釋執行的是A.應用服務器B.虛擬機C.垃圾回收器D.編譯器2.一個棧的輸入序列為12345,則下列...