基础三:控制执行流程
概述
在Java中,涉及的關(guān)鍵字包括:if-else , while , do-while, for, return, break和switch.
Java并不支持goto語(yǔ)句。
true和false
所有條件語(yǔ)句都利用條件表達(dá)式的真或假來(lái)決定執(zhí)行的路徑。
Java不允許我們將一個(gè)數(shù)字作為布爾值使用,雖然在C和C++中是允許的。
比如if(a)中,那么首先必須用一個(gè)條件表達(dá)式將其轉(zhuǎn)換成布爾值,例如if(a!=0)
if-else
控制程序流程的最基本的形式,其中else是可選的。
if(Boolean-expression)statement或者
if(Boolean-expression)statement elsestatement迭代
while do-while和 for用來(lái)控制循環(huán),有時(shí)將他們劃分為迭代語(yǔ)句。
語(yǔ)句會(huì)重復(fù)執(zhí)行,直到起控制作用的布爾表達(dá)式得到“假”的結(jié)果為止。
while
while的循環(huán)格式如下
while(Boolean-expression)statement例如: 產(chǎn)生隨機(jī)數(shù),直到符合特定的條件為止
public class WhileTest{static boolean getConditon() throws Exception {boolean result = Math.random() < 0.99;System.out.println(result);Thread.sleep(1000);return result;}public static void main(String[] args) throws Exception {while (getConditon()) {System.out.println("in while");}System.out.println("out while");}}random()的作用是 產(chǎn)生0和1之間的數(shù)(包括0 但不包括1)。
do-while
格式:
dostatement while(Boolean-expression)while和do-while的唯一區(qū)別就是: do-while中的語(yǔ)句至少會(huì)執(zhí)行一次,即使表達(dá)式第一次就計(jì)算為false。
而在while中如果第一次的條件為false,其中的語(yǔ)句根本不會(huì)執(zhí)行。
在實(shí)際應(yīng)用中,while更常用一些。
for循環(huán)
格式:
for(initialization ; Boolean-expression ; step)statement初始化(initialization)表達(dá)式
布爾表達(dá)式(Boolean-expression)
步進(jìn)(step)
每次迭代前都會(huì)測(cè)試布爾表達(dá)式,如果結(jié)果是false,就會(huì)執(zhí)行后面的代碼,每次循環(huán)結(jié)束,執(zhí)行一次步進(jìn)。
public static void main(String[] args) throws Exception {for (char c = 0; c < 128; c++) {if (Character.isLowerCase(c)) {System.out.println("value:" + (int) c + " ,character:" + c);}}}逗號(hào)操作符
注意不是逗號(hào)分隔符,而是逗號(hào)操作符。
Java中唯一用到逗號(hào)操作符的地方就是for循環(huán)的控制表達(dá)式。
在控制表達(dá)式的初始化和步進(jìn)控制部分,可以使用一系列由逗號(hào)分隔的語(yǔ)句,而且那些語(yǔ)句均會(huì)獨(dú)立執(zhí)行。
在一個(gè)控制表達(dá)式中,定義多個(gè)變量的這種能力只限于for循環(huán)適用,在其他任何選擇或者迭代語(yǔ)句中都不能使用這種方式。
Foreach
JavaSE5中引入了一種更加簡(jiǎn)介的for語(yǔ)法用于數(shù)組和容器。
不必創(chuàng)建int變量去對(duì)由訪問(wèn)項(xiàng)構(gòu)成的序列進(jìn)行技術(shù),foreach會(huì)自動(dòng)產(chǎn)生每一項(xiàng)
return
兩個(gè)作用
- 指定一個(gè)方法的返回值(假設(shè)它沒(méi)有void返回值)
- 退出當(dāng)前方法,并返回那個(gè)值
break和continue
break用于強(qiáng)行退出循環(huán),不執(zhí)行循環(huán)中剩下的語(yǔ)句
continue則停止當(dāng)前的迭代,然后退出循環(huán)起始處,開(kāi)始下一次迭代。
switch
switch(integral-selector){case interal-value: statement ; break;case interal-value: statement ; break;case interal-value: statement ; break;case interal-value: statement ; break;// .....default : statement ; }總結(jié)
以上是生活随笔為你收集整理的基础三:控制执行流程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。