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

java的if else語(yǔ)句入門指南(推薦)

 更新時(shí)間:2016年06月07日 10:44:33   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇java的if else語(yǔ)句入門指南(推薦)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

條件語(yǔ)句,是程序中根據(jù)條件是否成立進(jìn)行選擇執(zhí)行的一類語(yǔ)句,這類語(yǔ)句在實(shí)際使用中,難點(diǎn)在于如何準(zhǔn)確的抽象條件。例如實(shí)現(xiàn)程序登錄功能時(shí),如果用戶名和密碼正確,則進(jìn)入系統(tǒng),否則彈出“密碼錯(cuò)誤”這樣的提示框等。

本部分對(duì)于條件語(yǔ)句的介紹,重點(diǎn)在于語(yǔ)法講解和基本的使用,更詳細(xì)的使用參看后續(xù)的綜合示例部分。

在Java語(yǔ)言中,條件語(yǔ)句主要有兩類語(yǔ)法:if語(yǔ)句和switch語(yǔ)句。

1 、if語(yǔ)句

if關(guān)鍵字中文意思是如果,其細(xì)致的語(yǔ)法歸納來(lái)說(shuō)總共有三種:if語(yǔ)句、if-else語(yǔ)句和if-else if-else語(yǔ)句,下面分別進(jìn)行介紹。

1.1 if語(yǔ)句

該類語(yǔ)句的語(yǔ)法格式為:if(條件表達(dá)式)

功能代碼;語(yǔ)法說(shuō)明:if是該語(yǔ)句中的關(guān)鍵字,后續(xù)緊跟一對(duì)小括號(hào),該對(duì)小括號(hào)任何時(shí)候不能省略,小括號(hào)的內(nèi)部是具體的條件,語(yǔ)法上要求該表達(dá)式結(jié)果為boolean類型。后續(xù)為功能的代碼,也就是當(dāng)條件成立時(shí)執(zhí)行的代碼,在程序書寫時(shí),一般為了直觀的表達(dá)包含關(guān)系,功能代碼一般需要縮進(jìn)。

需要特別注意的是:

1、 這里的功能代碼只能是一行,關(guān)于多行結(jié)構(gòu)的功能代碼,后續(xù)將說(shuō)明。

2、 if(條件表達(dá)式)后續(xù)一般不書寫分號(hào)if語(yǔ)句的執(zhí)行流程為:如果條件表達(dá)式成立,則執(zhí)行功能代碼,如果條件表達(dá)式不成立,則不執(zhí)行后續(xù)的功能代碼。

示例代碼:

int a = 10;

if(a >= 0)

System.out.println(“a是正數(shù)”);

if( a % 2 == 0)

System.out.println(“a是偶數(shù)”);

在該示例代碼中,第一個(gè)條件是判斷變量a的值是否大于等于零,如果該條件成立則執(zhí)行輸出,第二個(gè)條件是判斷變量a是否為偶數(shù),如果成立也輸出。

注意以下代碼的執(zhí)行流程:

int m = 20;

if( m > 20)

m += 20;

System.out.println(m);

按照前面的語(yǔ)法格式說(shuō)明,只有m+=20;這行代碼屬于功能代碼,而后續(xù)的輸出語(yǔ)句和前面的條件形成順序結(jié)構(gòu),所以該程序執(zhí)行以后輸出的結(jié)果為20.如果當(dāng)條件成立時(shí),需要執(zhí)行的語(yǔ)句有多句,則可以使用語(yǔ)句塊來(lái)進(jìn)行表述,語(yǔ)法格式如下:

if(條件表達(dá)式){

功能代碼塊;

}

使用這種語(yǔ)法格式,使用一個(gè)代碼塊來(lái)代替前面的功能代碼,這樣可以在代碼塊內(nèi)部書寫任意多行的代碼,而且也使整個(gè)程序的邏輯比較清楚,所以在實(shí)際的代碼編寫中推薦使用該種邏輯。

1.2 if-else語(yǔ)句

if-else語(yǔ)句實(shí)現(xiàn)了封閉的條件,在程序中使用的更加常見(jiàn)。其中else關(guān)鍵字的作用是“否則”,即條件不成立的情況。

if-else語(yǔ)句的語(yǔ)法格式如下:

if(條件表達(dá)式)

功能代碼1;

else

功能代碼2;

語(yǔ)法說(shuō)明:其中前面的部分和if語(yǔ)句一樣,else部分后面是功能的代碼,按照該語(yǔ)法格式,功能代碼只能有一句。

執(zhí)行順序:如果條件成立,則執(zhí)行if語(yǔ)句中的功能代碼1,否則執(zhí)行else中的功能代碼2.示例代碼為:

int n = 12;

if(n % 2 != 0)

System.out.println(“n是奇數(shù)”);

else System.out.println(“n不是奇數(shù)”);

則因?yàn)閚%2的值是0,條件不成立,則執(zhí)行else語(yǔ)句的代碼,程序輸出“n不是奇數(shù)”。

在實(shí)際使用時(shí),為了結(jié)構(gòu)清楚,以及可以在功能代碼部分書寫多行代碼,一般把功能代碼部分使用代碼塊,則語(yǔ)法格式為:

if(條件表達(dá)式){

功能代碼塊

}else{

功能代碼塊

}

當(dāng)程序中有多個(gè)if時(shí),else語(yǔ)句和最近的if匹配。示例代碼:

if(條件1)

功能代碼1;

if(條件2)

功能代碼2;

else功能代碼3;

則這里的else語(yǔ)句和條件2對(duì)應(yīng)的if語(yǔ)句匹配,前面的條件1是一個(gè)獨(dú)立的語(yǔ)句。在實(shí)際代碼中,可以使用大括號(hào)使整個(gè)程序的結(jié)構(gòu)更加清楚。

對(duì)于if-else語(yǔ)句來(lái)說(shuō),因?yàn)閕f的條件和else的條件是互斥的,所以在實(shí)際執(zhí)行中,只有一個(gè)語(yǔ)句中的功能代碼會(huì)得到執(zhí)行。

在實(shí)際開發(fā)中,有些公司在書寫條件時(shí),即使else語(yǔ)句中不書寫代碼,也要求必須書寫else,這樣可以讓條件封閉。這個(gè)不是語(yǔ)法上必須的。

1.3 if-else

if-else語(yǔ)句在現(xiàn)實(shí)中,有些時(shí)候的條件不是一個(gè),而是一組相關(guān)的條件,例如將阿拉伯?dāng)?shù)字轉(zhuǎn)換為中文大寫,根據(jù)分?jǐn)?shù)轉(zhuǎn)換為對(duì)應(yīng)的等級(jí)等,都是多條件的結(jié)構(gòu),在程序中為了避免寫多個(gè)if語(yǔ)句的結(jié)構(gòu),提供了一類專門的多分支語(yǔ)句,這就是if-else if-else語(yǔ)句。

if-else if-else語(yǔ)句的語(yǔ)法格式為:

if(條件1)

功能代碼1;

else if(條件2)

功能代碼2;

else if(條件3)

功能代碼3;
……

else功能代碼;

語(yǔ)法說(shuō)明:

1、 else if是else和if兩個(gè)關(guān)鍵字,中間使用空格進(jìn)行間隔。

2、 條件1到條件n都是boolean類型

3、 else if語(yǔ)句可以有任意多句

4、 最后的else語(yǔ)句為可選

5、 如果功能代碼部分不是語(yǔ)句塊,也就是不用大括號(hào),就只能寫一句。

執(zhí)行流程:當(dāng)條件1成立時(shí),則執(zhí)行功能代碼1;當(dāng)條件1不成立且條件2成立時(shí),則執(zhí)行功能代碼2;如果條件1、條件2都不成立且條件3成立,則執(zhí)行功能代碼3,依次類推,如果所有條件都不成立,則執(zhí)行else語(yǔ)句的功能代碼。其執(zhí)行流程的流程圖如上所示。

下面是一個(gè)實(shí)現(xiàn)根據(jù)月份的值,輸出該月份包含的日期數(shù),2月份全部輸出28,不考慮閏年的示例代碼:

int month = 3;

  int days = 0; //日期數(shù)

  if(month == 1){

  days = 31;

  }else if(month == 2){

  days = 28;

  } else if(month == 3){

  days = 31;

  } else if(month == 4){

  days = 30;

  } else if(month == 5){

  days = 31;

  } else if(month == 6){

  days = 30;

  } else if(month == 7){

  days = 31;

  } else if(month == 8){

  days = 31;

  } else if(month == 9){

  days = 30;

  } else if(month == 10){

  days = 31;

  } else if(month == 11){

  days = 30;

  } else if(month == 12){

  days = 31;

  }

  System.out.println(days);

再來(lái)看一個(gè)示例代碼,該代碼的功能是實(shí)現(xiàn)將百分制的成績(jī)轉(zhuǎn)換為A、B、C、D和E,代碼如下:

int score = 87;

  if(score >= 90){

  System.out.println(‘A');

  } else if(score >= 80){

  System.out.println(‘B');

  } else if(score >= 70){

  System.out.println(‘C');

  } else if(score >= 60){

  System.out.println(‘D');

  } else{

   System.out.println(‘E');

  }

從該代碼中可知,每個(gè)else if語(yǔ)句在書寫時(shí)是有順序的,在實(shí)際書寫時(shí),必須按照邏輯上的順序進(jìn)行書寫,否則將出現(xiàn)邏輯錯(cuò)誤。

if-else if-else語(yǔ)句是Java語(yǔ)言中提供的一個(gè)多分支條件語(yǔ)句,但是在判斷某些問(wèn)題時(shí),會(huì)書寫的比較麻煩,所以在語(yǔ)法中提供了另外一個(gè)語(yǔ)句——switch語(yǔ)句來(lái)更好的實(shí)現(xiàn)多分支語(yǔ)句的判別。

以上這篇java的if else語(yǔ)句入門指南(推薦)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • SpringMVC中的HandlerAdapter解析

    SpringMVC中的HandlerAdapter解析

    這篇文章主要介紹了SpringMVC中的HandlerAdapter解析,HandlerAdapter是一個(gè)關(guān)鍵的組件,用于將請(qǐng)求與處理程序方法進(jìn)行適配和調(diào)度,它充當(dāng)了控制器和處理程序之間的橋梁,負(fù)責(zé)將請(qǐng)求的參數(shù)和處理程序方法進(jìn)行匹配,并將結(jié)果返回給前端,需要的朋友可以參考下
    2023-10-10
  • Spring容器-BeanFactory和ApplicationContext使用詳解

    Spring容器-BeanFactory和ApplicationContext使用詳解

    這篇文章主要為大家介紹了Spring容器-BeanFactory和ApplicationContext的使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • Jdbctemplate多數(shù)據(jù)源配置方法詳解

    Jdbctemplate多數(shù)據(jù)源配置方法詳解

    這篇文章主要介紹了Jdbctemplate多數(shù)據(jù)源配置方法詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • java eclipse 中文件的上傳和下載示例解析

    java eclipse 中文件的上傳和下載示例解析

    這篇文章主要介紹了eclipse java中文件的上傳和下載示例解析,文件上傳,瀏覽器在上傳的過(guò)程中是將文件以流的形式提交到服務(wù)器端的。對(duì)此感興趣的小伙伴可以了解一下
    2020-07-07
  • java 算法之快速排序?qū)崿F(xiàn)代碼

    java 算法之快速排序?qū)崿F(xiàn)代碼

    這篇文章主要介紹了java 算法之快速排序?qū)崿F(xiàn)代碼的相關(guān)資料,需要的朋友可以參考下
    2017-05-05
  • Java布隆過(guò)濾器的應(yīng)用實(shí)例

    Java布隆過(guò)濾器的應(yīng)用實(shí)例

    這篇文章主要介紹了Java布隆過(guò)濾器的應(yīng)用實(shí)例,在程序的世界中,布隆過(guò)濾器是程序員的一把利器,利用它可以快速地解決項(xiàng)目中一些比較棘手的問(wèn)題,如網(wǎng)頁(yè)?URL?去重、垃圾郵件識(shí)別、大集合中重復(fù)元素的判斷和緩存穿透等問(wèn)題,需要的朋友可以參考下
    2023-11-11
  • Java查找不重復(fù)無(wú)序數(shù)組中是否存在兩個(gè)數(shù)字的和為某個(gè)值

    Java查找不重復(fù)無(wú)序數(shù)組中是否存在兩個(gè)數(shù)字的和為某個(gè)值

    今天小編就為大家分享一篇關(guān)于Java查找不重復(fù)無(wú)序數(shù)組中是否存在兩個(gè)數(shù)字的和為某個(gè)值,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01
  • Java使用正則表達(dá)式進(jìn)行匹配且對(duì)匹配結(jié)果逐個(gè)替換

    Java使用正則表達(dá)式進(jìn)行匹配且對(duì)匹配結(jié)果逐個(gè)替換

    這篇文章主要介紹了Java使用正則表達(dá)式進(jìn)行匹配且對(duì)匹配結(jié)果逐個(gè)替換,文章圍繞主題展開詳細(xì)的內(nèi)容戒殺,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-09-09
  • 詳解Java中的pinpoint1.8.5安裝及使用指南

    詳解Java中的pinpoint1.8.5安裝及使用指南

    pinpoint是開源在github上的一款A(yù)PM監(jiān)控工具,它是用Java編寫的,用于大規(guī)模分布式系統(tǒng)監(jiān)控。這篇文章主要介紹了pinpoint1.8.5安裝及使用指南,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-10-10
  • SpringBoot優(yōu)化接口響應(yīng)時(shí)間的九個(gè)技巧

    SpringBoot優(yōu)化接口響應(yīng)時(shí)間的九個(gè)技巧

    在實(shí)際開發(fā)中,提升接口響應(yīng)速度是一件挺重要的事,特別是在面臨大量用戶請(qǐng)求的時(shí)候,本文為大家整理了9個(gè)SpringBoot優(yōu)化接口響應(yīng)時(shí)間的技巧,希望對(duì)大家有所幫助
    2024-01-01

最新評(píng)論

安塞县| 鄂州市| 扎兰屯市| 古田县| 大新县| 黑河市| 杭锦后旗| 烟台市| 娱乐| 新源县| 石门县| 濮阳县| 太谷县| 武宁县| 阜城县| 阿瓦提县| 泾源县| 靖远县| 工布江达县| 宾阳县| 乌兰浩特市| 南宁市| 永昌县| 神池县| 汉川市| 福泉市| 霞浦县| 舒兰市| 莱州市| 宝丰县| 全州县| 岐山县| 宁安市| 五河县| 黑龙江省| 光山县| 长沙市| 内乡县| 吴桥县| 鄂伦春自治旗| 涞水县|