Java分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)原理與用法詳解
本文實例講述了Java分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)。分享給大家供大家參考,具體如下:
流程控制分類
- 順序語句:從上到下按順序依次執(zhí)行
- 分支語句:根據(jù)條件不同,執(zhí)行不同語句
- 循環(huán)語句:重復(fù)執(zhí)行某些動作
單分支條件判斷語句
條件語句
只是單獨的判斷條件是否成立
if選擇結(jié)構(gòu)是根據(jù)條件判斷之后再做處理
語法
if(布爾表達式)
{
//如果布爾表達式為true將執(zhí)行的語句
}


注意:條件必須是boolean類型
if只帶一條語句可以省略{}
雙分支條件判斷語句
if...else...需要對條件成立和不成立的情況分別處理
if 語句后面可以跟 else 語句,當 if 語句的布爾表達式值為 false 時,else 語句塊會被執(zhí)行。
語法
if(條件){
//代碼塊1
}else{
//代碼塊2
}

多分支條件判斷語句
if...else if...else 語句
語法
if(布爾表達式 1){
//如果布爾表達式 1的值為true執(zhí)行代碼
}else if(布爾表達式 2){
//如果布爾表達式 2的值為true執(zhí)行代碼
}else if(布爾表達式 3){
//如果布爾表達式 3的值為true執(zhí)行代碼
}else {
//如果以上布爾表達式都不為true執(zhí)行代碼
}
注意:多個條件用多個 else if,而if只能有一個;
else可以省略,表示以上條件都不成立執(zhí)行else
if,else if,else只帶一條語句可以省略{}
String類型比較字符串相等的方法
字符串1.equals("字符串2");//相等 true 不相等false
== 判斷的是內(nèi)存地址,是否為同一對象,不是字符串值。
int num2 = input.nextInt();
boolean flag = num2.equals("+");
switch語句
switch 語句判斷一個變量與一系列值中某個值是否相等,每個值稱為一個分支。
語法
witch(expression){
case value :
//語句
break; //可選
case value :
//語句
break; //可選
//你可以有任意數(shù)量的case語句
default : //可選
//語句
}
switch和多重if的區(qū)別
【1】switch只能進行等值的條件判斷;多重if可以判斷任何情況,但多用于范圍的判斷;
【2】同樣都是等值的判斷,switch效率要高一些
switch注意:
【1】支持標簽堆疊:空標簽羅列在一起
【2】多個條件判斷可以有多個case標簽
【3】default:標簽可以省略
【4】break;結(jié)束switch不加 繼續(xù)執(zhí)行;
【5】表達式的類型與值的類型要一致,只能是byte,short,int,char,String,枚舉
package test;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("輸入一個月份:");
int month = input.nextInt();
switch(month) {
case 3:
case 4:
case 5:
System.out.println("春天");
break;
case 6:
case 7:
case 8:
System.out.println("夏天");
break;
case 9:
case 10:
case 11:
System.out.println("秋天");
break;
case 12:
case 1:
case 2:
System.out.println("冬天");
break;
default:
System.out.println("輸入的月份不正確!");
}
System.out.println("Game Over!");
}
}
分支語句嵌套
if(條件1){
if(條件2){
代碼塊;
}
}
注意:只有外層 條件1 成立true,才能進行內(nèi)層 條件2 的判斷。
循環(huán)語句
循環(huán):重復(fù)執(zhí)行的操作。
特點:循環(huán)條件
循環(huán)操作
分類:
非固定次數(shù)循環(huán)
while
do - while
固定次數(shù)循環(huán)
for
非固定次數(shù)循環(huán)
while(條件){
循環(huán)體;//循環(huán)操作
}
特點:先進行條件判斷,后執(zhí)行循環(huán)操作。
解決循環(huán)次數(shù)固定的問題:
三要素:1.循環(huán)變量的初值;
2.循環(huán)變量的終止值(條件)
3.循環(huán)變量變化的值(迭代,增量)
解決非固定次數(shù)問題:
解題方法:1.確定循環(huán)條件
2.確定循環(huán)體;
do-while循環(huán)
do{
循環(huán)體;
}while(循環(huán)條件);
注意:先執(zhí)行,后判斷條件;
固定次數(shù)循環(huán)
for(初值;條件終止值;增量){
循環(huán)操作;
}
注意:先條件判斷
支持逗號表達式
跳轉(zhuǎn)語句
break
【1】用在switch和循環(huán)中
【2】用在單層循環(huán)中,用來結(jié)束循環(huán)
continue
【1】continue語句用來結(jié)束本次循環(huán)
【2】用在循環(huán)語句中
更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總》
希望本文所述對大家java程序設(shè)計有所幫助。
相關(guān)文章
eclipse自動創(chuàng)建SpringBoot項目報錯的解決
這篇文章主要介紹了eclipse自動創(chuàng)建SpringBoot項目報錯的解決方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-01-01
SpringBoot優(yōu)雅地實現(xiàn)全局異常處理的方法詳解
這篇文章主要為大家詳細介紹了SpringBoot如何優(yōu)雅地實現(xiàn)全局異常處理,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習一下2022-08-08
SpringBoot @ConfigurationProperties注解的簡單使用
即便現(xiàn)在簡化了配置,但是一個獨立的配置文件總是易于理解而且使人安心的。Spring在構(gòu)建完項目后,會默認在resources文件夾下創(chuàng)建一個application.properties文件,application.yml也是一樣的效果。@ConfigurationProperties可以獲取配置文件中的數(shù)據(jù),將其注入類。2021-05-05
IntellJ idea使用FileWatch實時編譯less文件的方法
這篇文章主要介紹了IntellJ idea使用FileWatch實時編譯less文件的相關(guān)資料,需要的朋友可以參考下2018-02-02

