最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java 精煉解讀數(shù)據(jù)結(jié)構(gòu)邏輯控制

 更新時(shí)間:2022年03月15日 15:06:41   作者:K穩(wěn)重  
在程序開(kāi)發(fā)的過(guò)程之中一共會(huì)存在有三種程序邏輯:順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu),對(duì)于之前所編寫(xiě)的代碼大部分都是順序結(jié)構(gòu)的定義,即:所有的程序?qū)凑斩x的代碼順序依次執(zhí)行

一、順序結(jié)構(gòu)

程序的執(zhí)行和代碼的執(zhí)行順序有關(guān),如果調(diào)整代碼的書(shū)寫(xiě)順序, 則執(zhí)行順序也發(fā)生變化

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAS-WqvuKAjQ==,size_20,color_FFFFFF,t_70,g_se,x_16

二、分支結(jié)構(gòu)

基本語(yǔ)法形式1:

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

//條件滿(mǎn)足時(shí)執(zhí)行代碼 }

基本語(yǔ)法形式2

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

//條件滿(mǎn)足時(shí)執(zhí)行代碼

}else{ ? ?

//條件不滿(mǎn)足時(shí)執(zhí)行代碼

}?

基本語(yǔ)法形式3 多分支的情況

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

//條件滿(mǎn)足時(shí)執(zhí)行代碼

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

//條件滿(mǎn)足時(shí)執(zhí)行代碼

}else{ ? ?

//條件都不滿(mǎn)足時(shí)執(zhí)行代碼

}

舉例:代碼如下

public static void main(String[] args) {
        int n = 10;
        //if里面只能是布爾表達(dá)式
        if(n % 2 == 0) {
            System.out.println("偶數(shù)");
        }else{
            System.out.println("奇數(shù)");
        }
 
    }
}

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAS-WqvuKAjQ==,size_20,color_FFFFFF,t_70,g_se,x_16

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAS-WqvuKAjQ==,size_20,color_FFFFFF,t_70,g_se,x_16

讀入字符串?

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAS-WqvuKAjQ==,size_20,color_FFFFFF,t_70,g_se,x_16

讀入字符串,如果字符串存在空格的情況下,遇到空格結(jié)束?

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAS-WqvuKAjQ==,size_20,color_FFFFFF,t_70,g_se,x_16

如果你要讀取字符串和整數(shù),要先讀取字符串再讀取整數(shù)

?如果要簡(jiǎn)單使用輸入函數(shù),可以用。項(xiàng)目當(dāng)中,慎重?。。。。?!

判斷是不是閏年:

public class TestDemo {
 
  方法1: public static void main1(String[] args) {
        int year = 2000;
        if (year % 100 == 0) {
            if (year % 400 == 0) {
                System.out.println("是閏年");
            } else {
                System.out.println("不是閏年");
            }
        } else {
            if (year % 4 == 0) {
                System.out.println("是閏年");
            } else {
                System.out.println("不是閏年");
            }
        }
    }
 
  方法2:  public static void main(String[] args) {
        int year = 2000;
        if(year % 100!= 0 && year % 4== 0 ||year % 400 == 0){
            System.out.println("是閏年");
        }else{
            System.out.println("不是閏年");
        }
 
 
    }
}

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAS-WqvuKAjQ==,size_20,color_FFFFFF,t_70,g_se,x_16

懸垂 else 問(wèn)題?

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAS-WqvuKAjQ==,size_20,color_FFFFFF,t_70,g_se,x_16

switch 語(yǔ)句?

基本語(yǔ)法

switch(整數(shù)|枚舉|字符|字符串){

case 內(nèi)容1 : {

內(nèi)容滿(mǎn)足時(shí)執(zhí)行語(yǔ)句;

[break;]

}

case 內(nèi)容2 : {

內(nèi)容滿(mǎn)足時(shí)執(zhí)行語(yǔ)句;

[break;]

} ...

default:{ 內(nèi)容都不滿(mǎn)足時(shí)執(zhí)行語(yǔ)句;

[break;]

}

}

舉例:

    public static void main(String[] args) {
        //long double float boolean不是不能做switch語(yǔ)句里面的參數(shù)的
        int a = 10;
        switch (a){//小括號(hào)里面是一個(gè)表達(dá)式,必須是一個(gè)簡(jiǎn)單的表達(dá)式,不能像c語(yǔ)言一樣,比如說(shuō)a>=10 && a<=20
            case 1:
                System.out.println("1");
                break;
            case 2:
                System.out.println("2");
            default:
                System.out.println("參數(shù)不匹配");
                break;
        }
    }
}

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAS-WqvuKAjQ==,size_20,color_FFFFFF,t_70,g_se,x_16

String類(lèi)型可以作為Java中switch語(yǔ)句的參數(shù)?

根據(jù) switch 中值的不同, 會(huì)執(zhí)行對(duì)應(yīng)的 case 語(yǔ)句. 遇到 break 就會(huì)結(jié)束該 case 語(yǔ)句

如果 switch 中的值沒(méi)有匹配的 case, 就會(huì)執(zhí)行 default 中的語(yǔ)句.

我們建議一個(gè) switch 語(yǔ)句最好都要帶上 default

我們發(fā)現(xiàn), 不寫(xiě) break 的時(shí)候, case 語(yǔ)句會(huì)依次向下執(zhí)行, 從而失去了多分支的效果

注意事項(xiàng)1

break 不要遺漏, 否則會(huì)失去 "多分支選擇" 的效果

注意事項(xiàng)2

switch 中的值只能是 整數(shù)|枚舉|字符|字符串

注意事項(xiàng)3 switch 不能表達(dá)復(fù)雜的條件

// 例如: 如果 num 的值在 10 到 20 之間, 就打印 hehe

// 這樣的代碼使用 if 很容易表達(dá), 但是使用 switch 就無(wú)法表示.

if (num > 10 && num < 20) {

System.out.println("hehe");

}

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

3.1 while 循環(huán)?

基本語(yǔ)法格式:

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

語(yǔ)句塊;

}

循環(huán)條件為 true, 則執(zhí)行循環(huán)語(yǔ)句; 否則結(jié)束循環(huán)?

舉例:

求1到10的和   
public static void main(String[] args) {
       int i = 1;
       int sum = 0;
       while(i <=10) {
           sum += i;
           i++;
       }
        System.out.println(sum);
    }
}
 
求n的階乘
 
    public static void main(String[] args) {
        int j = 3;
        int ret = 0;
            int sum = 1;
            int i = 1;
                while(i<=j) {
 
                    sum *=i;
                    i++;
                }
        System.out.println(sum);
 
        }

注意事項(xiàng):

1. 和 if 類(lèi)似, while 下面的語(yǔ)句可以不寫(xiě) { } , 但是不寫(xiě)的時(shí)候只能支持一條語(yǔ)句. 建議還是加上 { }

2. 和 if 類(lèi)似, while 后面的 { 建議和 while 寫(xiě)在同一行.

3. 和 if 類(lèi)似, while 后面不要多寫(xiě) 分號(hào), 否則可能導(dǎo)致循環(huán)不能正確執(zhí)行?

3.2 break

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

代碼示例:找到 100 - 200 中第一個(gè) 3 的倍數(shù)?

public static void main(String[] args) {
        int num = 100;
        while (num <= 200) {
            if (num % 3 == 0) {
                System.out.println("找到了 3 的倍數(shù), 為:" + num);
                break;
            }
            num++;
        }

//執(zhí)行結(jié)果
//找到了 3 的倍數(shù), 為:102

執(zhí)行到 break 就會(huì)讓循環(huán)結(jié)束.

3.3 continue?

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

舉例:?

求1到10之間三倍數(shù)
 
public static void main(String[] args) {
        int i = 1;
        while(i<=10) {
            if(i % 3 !=0 ){
                i++;
                continue;
            }
            System.out.println(i);
                  i++;
        }

執(zhí)行到 continue 語(yǔ)句的時(shí)候, 就會(huì)立刻進(jìn)入下次循環(huán)(判定循環(huán)條件), 從而不會(huì)執(zhí)行到下方的打印語(yǔ)句?

總結(jié):break結(jié)束所有循環(huán),continue結(jié)束本趟循環(huán)

?break和continue都必須在循環(huán)里,【特殊:break可以在switch語(yǔ)句當(dāng)中】

3.4 for 循環(huán)?

基本語(yǔ)法:

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

語(yǔ)句塊;

}

watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAS-WqvuKAjQ==,size_20,color_FFFFFF,t_70,g_se,x_16

表達(dá)式1: 用于初始化循環(huán)變量.

表達(dá)式2: 循環(huán)條件

表達(dá)式3: 更新循環(huán)變量

舉例:

求1到100之間的和 
public static void main(String[] args) {
       int sum = 0;
        for (int i = 1; i <= 100; i++) {
            sum += i;
        }
        }

注意事項(xiàng) (和while循環(huán)類(lèi)似)

1. 和 if 類(lèi)似, for 下面的語(yǔ)句可以不寫(xiě) { } , 但是不寫(xiě)的時(shí)候只能支持一條語(yǔ)句. 建議還是加上 { }

2. 和 if 類(lèi)似, for 后面的 { 建議和 while 寫(xiě)在同一行.

3. 和 if 類(lèi)似, for 后面不要多寫(xiě) 分號(hào), 否則可能導(dǎo)致循環(huán)不能正確執(zhí)行.?

3.5 do while 循環(huán)(選學(xué))?

基本語(yǔ)法 do{

循環(huán)語(yǔ)句;

}while(循環(huán)條件);

先執(zhí)行循環(huán)語(yǔ)句, 再判定循環(huán)條件.?

舉例:

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

注意事項(xiàng):

1. do while 循環(huán)最后的分號(hào)不要忘記

2. 一般 do while 很少用到, 更推薦使用 for 和 while.

總結(jié):

今天還是蠻累的,加入了計(jì)劃之星第三季,要更加的忙起來(lái)了,后面我會(huì)多多刷題多多寫(xiě)博客。

加油?。。。。?!

到此這篇關(guān)于Java 精煉解讀數(shù)據(jù)結(jié)構(gòu)邏輯控制的文章就介紹到這了,更多相關(guān)Java 邏輯控制內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Java并發(fā)編程之內(nèi)置鎖(synchronized)

    詳解Java并發(fā)編程之內(nèi)置鎖(synchronized)

    這篇文章主要介紹了Java并發(fā)編程之內(nèi)置鎖(synchronized)的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • 詳解Java字節(jié)碼編程之非常好用的javassist

    詳解Java字節(jié)碼編程之非常好用的javassist

    這篇文章主要介紹了詳解Java字節(jié)碼編程之非常好用的javassist,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • 淺析Java中的 new 關(guān)鍵字

    淺析Java中的 new 關(guān)鍵字

    java中的new關(guān)鍵字是實(shí)例化對(duì)象,接下來(lái)本文通過(guò)一個(gè)案例給大家講解Java中的 new 關(guān)鍵字,感興趣的朋友可以參考下
    2016-08-08
  • 基于自定義BufferedReader中的read和readLine方法

    基于自定義BufferedReader中的read和readLine方法

    下面小編就為大家分享一篇基于自定義BufferedReader中的read和readLine方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2017-12-12
  • Java責(zé)任鏈模式模板代碼分享

    Java責(zé)任鏈模式模板代碼分享

    這篇文章主要介紹了Java責(zé)任鏈模式模板代碼分享,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01
  • Java中ScheduledExecutorService介紹和使用案例(推薦)

    Java中ScheduledExecutorService介紹和使用案例(推薦)

    ScheduledExecutorService是Java并發(fā)包中的接口,用于安排任務(wù)在給定延遲后運(yùn)行或定期執(zhí)行,它繼承自ExecutorService,具有線(xiàn)程池特性,可復(fù)用線(xiàn)程,提高效率,本文主要介紹java中的ScheduledExecutorService介紹和使用案例,感興趣的朋友一起看看吧
    2024-10-10
  • Java集合框架之Collection接口詳解

    Java集合框架之Collection接口詳解

    這篇文章主要為大家詳細(xì)介紹了Java集合框架之Collection接口,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • SpringBoot如何使用RateLimiter通過(guò)AOP方式進(jìn)行限流

    SpringBoot如何使用RateLimiter通過(guò)AOP方式進(jìn)行限流

    這篇文章主要介紹了SpringBoot如何使用RateLimiter通過(guò)AOP方式進(jìn)行限流,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • SpringBoot整合jasypt實(shí)現(xiàn)重要數(shù)據(jù)加密

    SpringBoot整合jasypt實(shí)現(xiàn)重要數(shù)據(jù)加密

    Jasypt是一個(gè)專(zhuān)注于簡(jiǎn)化Java加密操作的開(kāi)源工具,這篇文章主要為大家介紹了詳細(xì)介紹了如何使用jasypt實(shí)現(xiàn)重要數(shù)據(jù)加密,感興趣的小伙伴可以了解下
    2025-03-03
  • Java?輸入輸出?IO?NIO?AIO三兄弟對(duì)比分析對(duì)比分析

    Java?輸入輸出?IO?NIO?AIO三兄弟對(duì)比分析對(duì)比分析

    這篇文章主要為大家介紹了Java?輸入輸出?IO?NIO?AIO三兄弟對(duì)比分析對(duì)比分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04

最新評(píng)論

卢氏县| 循化| 武城县| 武隆县| 文山县| 获嘉县| 囊谦县| 清徐县| 板桥市| 舟山市| 西林县| 永德县| 海南省| 平舆县| 富民县| 岳阳市| 东源县| 云和县| 高陵县| 旬阳县| 仪陇县| 方山县| 石屏县| 荔波县| 新郑市| 梁山县| 望都县| 怀化市| 贡山| 钟山县| 和林格尔县| 平塘县| 晋中市| 商丘市| 博罗县| 北辰区| 郓城县| 梁平县| 洛扎县| 丹凤县| 桐梓县|