程序的控制結(jié)構(gòu):順序载绿、分支飞蹂、循環(huán)
分支語句:if和switch
1.if(條件){//滿足條件執(zhí)行語句塊}
if(num==0){
System.out.println("0");
}
if多分支:
if(條件){滿足執(zhí)行辆布,不滿足執(zhí)行else if }else if(條件){//語句塊}
if(num==0){
System.out.println("0");
}else if(num==3){
System.out.println("3");
}
switch分支:
switch(條件){//switch的條件類型只能為整形包括String類型的整數(shù)企软。
Case1:
語句塊
break;
……
Case default:
語句塊
break遵湖;
}
int week = 1;
switch (week) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
default:
System.out.println("錯(cuò)誤");
break;
}
Switch中case不加break有直通特性;
default的順序如果都有break沒影響晚吞,否則有影響奄侠。
break和return的區(qū)別:
break:跳出語句塊
return:結(jié)束程序和返回當(dāng)前值
if和switch的區(qū)別:
1.能用switch實(shí)現(xiàn)的都能用if實(shí)現(xiàn)并且if語句的條件沒有任何限制,switch只能是整型
2.if用在分支語句較少并且是一個(gè)范圍
switch:較多————————整數(shù)
程序的控制結(jié)構(gòu):循環(huán)while ,for 载矿,do while
循環(huán)的兩要素1.循環(huán)條件2.循環(huán)體
while(循環(huán)條件){滿足條件的循環(huán)體}
int i=1;
int sum = 0;
while(i<=3){//循環(huán)條件
//循環(huán)體
sum += i;// i = 1,sum = 1; i=2 ,sum=3;...i=100,sum += 100
i++;//i=2,i=3...i=101
}
System.out.println("sum="+sum);
while(true){//死循環(huán)和break聯(lián)合使用}
System.out.println("開始跑步啦啦啦垄潮。。闷盔。");
int count = 0;
while(true){
count++;
System.out.println("已經(jīng)跑了"+count+"圈了M湎础!");
if(count == 9){
System.out.println("已經(jīng)跑了9圈了逢勾,實(shí)在跑不動(dòng)了");
break;
}
break和continue的區(qū)別
break:跳出整個(gè)循環(huán)
continue:結(jié)束本次循環(huán)進(jìn)行下一次循環(huán)
for(變量的初始化牡整;循環(huán)條件;循環(huán)變量更新){循環(huán)體}
for(int i=1;i<=100;i++){//變量的作用域:
sum += i;
}
Do{循環(huán)體}while(循環(huán)條件)溺拱;至少循環(huán)一次
三者之間的區(qū)別:
1.while和for先執(zhí)行條件判斷do while先循環(huán)滿不滿足條件都執(zhí)行一次
2.for一般用于循環(huán)次數(shù)確定的
3.for循更為簡潔
迭代:(iteration)
while逃贝,for,dowhile用來控制循環(huán)有時(shí)將它們劃分為迭代語句語句會(huì)重復(fù)執(zhí)行直到其
控制作用的布爾表達(dá)式得到“假”的結(jié)果為止迫摔。
逗號(hào)操作符:逗號(hào)主要起到分隔符的作用沐扳;java中唯一用到逗號(hào)操作符的地方就是for循環(huán)
for(int i=1,j=i+10句占;i<5沪摄;i++,j=i*2){}
通過逗號(hào)操作符可以在for語句內(nèi)定義多個(gè)變量必須是相同類型
Foreach語法(增強(qiáng)for循環(huán))
int[] arrA = { 1, 2, 3, 4, 5, 6 };
for (int s : arrA) {
System.out.println(s);
}
標(biāo)簽:java中標(biāo)簽起作用的唯一地方就是剛好在迭代語句之前使用標(biāo)簽的唯一理由就是因
為有嵌套循環(huán)存在而且想從多層嵌套中break或者continue
標(biāo)簽的后面跟有冒號(hào)標(biāo)識(shí)符:如 aaa:
案例:九九乘法表
for(int i=1;i<=9;i++){//代表行號(hào)
for(int j=1;j<=i;j++){//代表列號(hào)
System.out.print(j+"*"+i+"="+(j*i)+" ");
}
System.out.println();//換行
}
System.out.println("------------------------------------");
//用while循環(huán)打印九九乘法表
int i=1;
while(i<=9){
int j = 1;
while(j<=i){
System.out.print(j+"*"+i+"="+(j*i)+" ");
j++;
}
i++;
System.out.println();
}
遞歸算法
數(shù) 幽 身 直 接 或 者 間 接 的 調(diào) 用 到 了 自 身 纱烘。
一 個(gè) 功 能 在 重 復(fù) 使 用 杨拐, 并 每 次 使 用 時(shí) , 參 與 運(yùn) 算 的 結(jié) 果 和 上 一 次 調(diào) 用 有 關(guān) 擂啥。
這 時(shí) 可 以 用 遞 歸 來 解 決 問 題 哄陶。
注意:
1 , 遞 歸 一 定 明 確 條 件 哺壶。 否則 容 易 棧 溢 出 屋吨。
2 · 注 意 一 下 遞 歸 的 次 數(shù) 舱痘。
Public static int getSum (int num) {
if (num= = 1)
return 1 ;
return num+getSum (num—I )
}