欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java 邏輯控制全面詳解

 更新時(shí)間:2021年10月18日 10:16:40   作者:零零星星楓葉夢(mèng)  
程序的邏輯主要分為三種結(jié)構(gòu):順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu),順序結(jié)構(gòu)的所有的代碼都是從前向后執(zhí)行的。有些時(shí)候順序是由“{}”為界限的,下文將全面詳細(xì)的介紹

1 順序結(jié)構(gòu)

順序結(jié)構(gòu)比較簡(jiǎn)單,就是代碼一行一行的執(zhí)行,本節(jié)之前寫的所有代碼都是順序結(jié)構(gòu)。

例如:

public static void main(String[] args) {
        int a=10;
        System.out.println(a);
        System.out.println("hhhh");
        double f=10.732;
        System.out.println(f);

2 分支結(jié)構(gòu)

2.1 if語句

基本語法形式1:

if(布爾表達(dá)式){

//條件滿足時(shí)的要執(zhí)行的語句

}

示例代碼1:

public static void main(String[] args) {
       int a=10;
       int b=20;
       if(a<b){
           System.out.println(a);//a是10 b是20 a<b條件成立執(zhí)行該語句
       }
       if(a>b){
           System.out.println(b);//a是10 b是20 a>b條件不成立不執(zhí)行該語句
       }

基本語法形式2:

if(布爾表達(dá)式){

//條件成立是執(zhí)行的語句

}

else{

//條件不成立時(shí)執(zhí)行的語句

}

示例代碼2:

public static void main(String[] args) {
        int a=10;
        int b=20;
        if(a>b){
            System.out.println(a);//a是10 b是20 a>b條件不成立不執(zhí)行該語句
        }
        else{
            System.out.println(b);//a是10 b是20 a>b條件成立執(zhí)行該語句
            
        }
    }

基本語法形式3:

if(布爾表達(dá)式1){

//表達(dá)式1為true,執(zhí)行的代碼

}

else if(布爾表達(dá)式2){

//表達(dá)式2為true,執(zhí)行的代碼

}

else{

//表達(dá)式1和表達(dá)式2都為falses,執(zhí)行的代碼

}

示例代碼3:

public static void main(String[] args) {
        int a=10;
        int b=10;
        if(a>b){
            System.out.println(a);//表達(dá)式1不成立,該語句不執(zhí)行
        }
        else if(b>a){
            System.out.println(b);//表達(dá)式2不成立。該語句不執(zhí)行
        }
        else{
 
            System.out.print("a=b=");//表達(dá)式1和表達(dá)式2都不成立,該語句執(zhí)行
            System.out.println(a);//注意:表達(dá)式成立時(shí)執(zhí)行的語句可以是多條
        }
    }

注意事項(xiàng)1:

if語句可以嵌套使用,當(dāng)if(布爾表達(dá)式)中的表達(dá)式成立時(shí),就會(huì)執(zhí)行對(duì)應(yīng)的語句塊 ,在這個(gè)對(duì)應(yīng)的語句塊中也可以使用if語句

例如:找出三個(gè)數(shù)中最大的數(shù)

public static void main(String[] args) {
        int a=50;
        int b=70;
        int c=20;
        System.out.print("最大的數(shù)是");
        if(a>b){
            //a>b不成立,所以不執(zhí)行改語句塊
            if(c>a){
 
                System.out.println(c);
            }
            else{
                System.out.println(a);
            }
        }
        else{
            //a>b不成立,所以執(zhí)行該語句塊
            if(c>b){
                System.out.println(c);//c>b不成立,不執(zhí)行該語句
            }
            else{
                System.out.println(b);//c>b不成立,所以執(zhí)行改語句
            }
        }
    }

注意事項(xiàng)2:

if語句中的布爾表達(dá)式成立時(shí),會(huì)執(zhí)行if所對(duì)應(yīng)的語句塊。如果不加“{}”時(shí),就會(huì)執(zhí)行緊隨其后的一條語句

例如:

public static void main(String[] args) {
        int a=10;
        int b=20;
        if(a>b)
            System.out.println(a);//此時(shí)if條件不成立,所以不會(huì)執(zhí)行這條語句
            System.out.println(b);//雖然if條件不成立,但是這條語句已經(jīng)超出了if
                                  //語句塊,所以這條語句還會(huì)執(zhí)行
    }

2.2 switch語句

基本語法格式

switch ( 整數(shù) | 枚舉 | 字符 | 字符串 ){
case 內(nèi)容 1 : {
內(nèi)容滿足時(shí)執(zhí)行語句 ;
[ break ;]
}
case 內(nèi)容 2 : {
內(nèi)容滿足時(shí)執(zhí)行語句 ;
[ break ;]
}
...
default :{
內(nèi)容都不滿足時(shí)執(zhí)行語句 ;
[ break ;]
}

示例代碼:

 public static void main(String[] args) {
        int day=5;
        switch (day){
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期天");
                break;
            default:
                System.out.println("輸入錯(cuò)誤");
                break;
        }
    }

根據(jù) switch 中值的不同 , 會(huì)執(zhí)行對(duì)應(yīng)的 case 語句 . 遇到 break 就會(huì)結(jié)束該 case 語句 . 如果 switch 中的值沒有匹配的 case, 就會(huì)執(zhí)行 default 中的語句 . 我們建議一個(gè) switch 語句最好都要帶上 default.

3 循環(huán)結(jié)構(gòu)

3.1while循環(huán)

基本語法格式:

while(布爾表達(dá)式){

//要執(zhí)行的語句塊;

}

當(dāng)布爾表達(dá)式為true,循環(huán)執(zhí)行要執(zhí)行的語句塊,否則結(jié)束循環(huán)。

示例代碼:輸出1~10

 public static void main(String[] args) {
        int i=1;
        while(i<=10){
            System.out.println(i);
            i++;
        }   
    }

注意事項(xiàng):

  • 1. 和 if 類似, while 下面的語句可以不寫 { } , 但是不寫的時(shí)候只能支持一條語句. 建議還是加上 { }
  • 2. 和 if 類似, while 后面的 { 建議和 while 寫在同一行.
  • 3. 和 if 類似, while 后面不要多寫 分號(hào), 否則可能導(dǎo)致循環(huán)不能正確執(zhí)行。

3.2 break語句

break 的功能是讓循環(huán)提前結(jié)束 .

例如:找出1~10中第一個(gè)3的倍數(shù)

public static void main(String[] args) {
        int  i=1;
        while(i<=10){
            if(i%3==0){
                System.out.println(i);
                break;//遇到break語句,循環(huán)結(jié)束
            }
            i++;
        }
    }

3.3 continue語句

continue 的功能是跳過這次循環(huán) , 立即進(jìn)入下次循環(huán) .

例如:找出1~10之間所有的偶數(shù)

public static void main(String[] args) {
        int i=1;
        while(i<=10){
            if(i%2!=0){
                i++;
                continue;//遇到continue語句,會(huì)直接進(jìn)入下一次循環(huán),不會(huì)執(zhí)行后面的語句
            }
            System.out.println(i);
            i++;
 
        }
    }

3.4 for循環(huán)

基本語法格式:

for(表達(dá)式1;布爾表達(dá)式2;表達(dá)式3){

//循執(zhí)行的語句塊

}

for循環(huán)執(zhí)行的順序是:

首次循環(huán):首先執(zhí)行表達(dá)式1,再執(zhí)行布爾表達(dá)式2,然后執(zhí)行循環(huán)體;最后執(zhí)行表達(dá)式3。

其余循環(huán): 首先執(zhí)行布爾表達(dá)式2,然后執(zhí)行循環(huán)體,最后執(zhí)行表達(dá)式3。

結(jié)束循環(huán): 布爾表達(dá)式的值為false.

示例代碼:

輸出1~10之間的所有數(shù)

public static void main(String[] args) {
        for (int i =1; i <=10 ; i++) {
            System.out.println(i);
        }
    }

注意事項(xiàng):

  • 1:break和continue對(duì)for循環(huán)同樣適用。
  • 2:和 if 類似 , for 下面的語句可以不寫 { } , 但是不寫的時(shí)候只能支持一條語句 . 建議還是加上 { }
  • 3: 和 if 類似 , for 后面的 { 建議和 while 寫在同一行 .
  • 4:和 if 類似 , for 后面不要多寫 分號(hào) , 否則可能導(dǎo)致循環(huán)不能正確執(zhí)行

3.5 do while 循環(huán)

基本語法格式:

do{

//循環(huán)執(zhí)行的語句
}while(布爾表達(dá)式);

do whiie 循環(huán)的執(zhí)行順序

首先執(zhí)行循環(huán)語句,然后再判斷布爾表達(dá)式是后為true.

因此,無論布爾表達(dá)式的值是否是true,第一次循環(huán)都會(huì)執(zhí)行。

示例代碼1:

打印1~10

public static void main(String[] args) {
        int  i=1;
        do{
            System.out.println(i);
            i++;
        }while (i<=10);
    }

示例代碼2:

演示布爾表達(dá)式不成立,循環(huán)語句執(zhí)行一次

public static void main(String[] args) {
        int  i=0;
        do{
            System.out.println(i);
        }while (i>0);//i=0 i>0表達(dá)式的值為false
    }

4 邏輯控制綜合案例

4.1 輸出1000~1200之間所有的閏年

 public static void main2(String[] args) {
 
        for (int i = 1000; i <=1200 ; i++) {
            if(i%100!=0&&i%4==0||i*400==0)
            {
                System.out.println(i);
            }
        }
    }

4.2 計(jì)算1~100之間9出現(xiàn)的次數(shù)

public static void main(String[] args) {
        int i=1;
        int num=0;
        while(i<=100){
            int j=i;
            /*
               求出一個(gè)數(shù)各個(gè)位上的數(shù)字
               循環(huán)執(zhí)行以下操作
               第一步:用這個(gè)數(shù)取余10的到個(gè)數(shù)
               第二步:這個(gè)數(shù)除等10
               第三步:判斷這個(gè)數(shù)是不是0
             */
            while (j>0){
                if(j%10==9) {
                    num++;
                }
                j=j/10;
            }
            i++;
        }
        System.out.println(num);//9 19 29 39 49 59 69 79 89 中各出現(xiàn)一次9 
                                //90 91 92 93 94 95 96 97 98中各出現(xiàn)一次9
                                //99中出現(xiàn)兩次9   總共20個(gè)9    
}

到此這篇關(guān)于Java 邏輯控制全面詳解的文章就介紹到這了,更多相關(guān)Java 邏輯控制內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 深入分析JAVA 多線程--interrupt()和線程終止方式

    深入分析JAVA 多線程--interrupt()和線程終止方式

    這篇文章主要介紹了JAVA 多線程--interrupt()和線程終止方式的的相關(guān)資料,文中代碼非常細(xì)致,幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • java代碼mqtt接收發(fā)送消息方式

    java代碼mqtt接收發(fā)送消息方式

    這篇文章主要介紹了java代碼mqtt接收發(fā)送消息方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • AJAX省市區(qū)三級(jí)聯(lián)動(dòng)下拉菜單(java版)

    AJAX省市區(qū)三級(jí)聯(lián)動(dòng)下拉菜單(java版)

    這篇文章主要介紹了AJAX省市區(qū)三級(jí)聯(lián)動(dòng)下拉菜單(java版)的相關(guān)資料,需要的朋友可以參考下
    2016-01-01
  • 詳解Spring中bean實(shí)例化的三種方式

    詳解Spring中bean實(shí)例化的三種方式

    本篇文章主要介紹了詳解Spring中bean實(shí)例化的三種方式,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-04-04
  • springboot整合skywalking的使用詳解

    springboot整合skywalking的使用詳解

    隨著分布式應(yīng)用大規(guī)模部署,應(yīng)用可觀測(cè)性從理論到落地已經(jīng)在眾多大型互聯(lián)網(wǎng)應(yīng)用中得到實(shí)踐,比如針對(duì)日志可視化ELK解決方案,分布式鏈路追蹤APM解決方案SkyWalking等,今天將詳細(xì)介紹下APM解決方案中一款重要工具SkyWalking的使用,需要的朋友可以參考下
    2024-01-01
  • swagger2隱藏在API文檔顯示某些參數(shù)的操作

    swagger2隱藏在API文檔顯示某些參數(shù)的操作

    這篇文章主要介紹了swagger2隱藏在API文檔顯示某些參數(shù)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • Java深入講解異常處理try?catch的使用

    Java深入講解異常處理try?catch的使用

    這篇文章主要介紹了Java異常處理機(jī)制try?catch流程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-06-06
  • Spring中初始化泛型類的方法實(shí)例

    Spring中初始化泛型類的方法實(shí)例

    這篇文章主要給大家介紹了Spring中如何初始化泛型類,文中給出詳細(xì)的介紹和方法實(shí)例,對(duì)大家的理解和學(xué)習(xí)具有一定的參考借鑒價(jià)值,有需要的朋友可以參考學(xué)習(xí),下面來一起看看吧。
    2017-01-01
  • SpringCloud?OpenFeign?服務(wù)調(diào)用傳遞?token的場(chǎng)景分析

    SpringCloud?OpenFeign?服務(wù)調(diào)用傳遞?token的場(chǎng)景分析

    這篇文章主要介紹了SpringCloud?OpenFeign?服務(wù)調(diào)用傳遞?token的場(chǎng)景分析,本篇文章簡(jiǎn)單介紹?OpenFeign?調(diào)用傳遞?header?,以及多線程環(huán)境下可能會(huì)出現(xiàn)的問題,其中涉及到?ThreadLocal?的相關(guān)知識(shí),需要的朋友可以參考下
    2022-07-07
  • java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實(shí)現(xiàn)方式

    java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實(shí)現(xiàn)方式

    這篇文章主要介紹了java新增關(guān)聯(lián)的三張表,每張表要求都插入集合,代碼實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12

最新評(píng)論