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

java 語(yǔ)句塊的使用詳解及實(shí)例

 更新時(shí)間:2017年01月08日 16:08:59   投稿:lqh  
這篇文章主要介紹了java 用語(yǔ)句塊的正確方法實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下

java 語(yǔ)句塊

猶記得在初看C,C++和Java的編程書(shū)籍時(shí),上面就有介紹語(yǔ)句塊,但當(dāng)時(shí)甚是不理解什么是語(yǔ)句塊?!洞a大全》中也有講說(shuō)要把相似功能的語(yǔ)句組織到一起形成語(yǔ)句塊,然后與其他語(yǔ)句塊用空行分隔。但這只是在人的理解上的語(yǔ)句塊,并非是真的程序語(yǔ)言意義上的語(yǔ)句塊。

程序上的定義,在我的理解來(lái)看應(yīng)該是有著相同的變量作用域的相關(guān)一組語(yǔ)句的集合,看起來(lái)就是應(yīng)該用{}括起來(lái)的,比如控制結(jié)構(gòu)中的邏輯。我認(rèn)為最關(guān)鍵的一點(diǎn)就是變量作用域,也就是說(shuō),如果能用同一個(gè)局部變量,那么就是程序意義上的語(yǔ)句塊。來(lái)看個(gè)例子:

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
 switch (item.getItemId()) { 
 case MENU_GOTO_FILEANT: 
 Intent i = new Intent(); 
 i.setClass(this, FileAntActivity.class); 
 startActivity(i); 
 break; 
 case MENU_TEST_LINEARLAYOUT: 
 i.setClass(this, LinearLayoutTest.class); 
 startActivity(i); 
 break; 
 default: 
 break; 
 } 
 return true; 
} 

對(duì)于第二個(gè)case語(yǔ)句,仍可以使用前面case所定義的變量,所以整個(gè)switch() {}內(nèi)都是一個(gè)語(yǔ)句塊。

但如果給每個(gè)case語(yǔ)句加上語(yǔ)句塊標(biāo)志,就不一樣了:

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
 switch (item.getItemId()) { 
 case MENU_GOTO_FILEANT: { 
 Intent i = new Intent(); 
 i.setClass(this, FileAntActivity.class); 
 startActivity(i); 
 break; 
 } 
 case MENU_TEST_LINEARLAYOUT: { 
 Intent i = new Intent(); 
 i.setClass(this, LinearLayoutTest.class); 
 startActivity(i); 
 break; 
 } 
 default: 
 break; 
 } 
 return true; 
} 

加上了{(lán)}就把二個(gè)case語(yǔ)句分隔了開(kāi)來(lái),形成了二個(gè)語(yǔ)句塊,它們有各自的變量作用域,互不影響,即使用名字相同,或再次定義也無(wú)妨。

說(shuō)明這些的目的就在于,要盡可能多的使用{}以形成真正的語(yǔ)句塊,最大的好處在于它能形成變量作用域,避免變量的作用域過(guò)大,即提高了可讀性,也減少了出錯(cuò)的可能。

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • 一文掌握J(rèn)ava中的JWT

    一文掌握J(rèn)ava中的JWT

    這篇文章主要介紹了Java中的JWT,JWT的本質(zhì)就是一個(gè)字符串,它是將用戶信息保存到一個(gè)Json字符串中,然后進(jìn)行編碼后得到一個(gè)JWT?token,對(duì)JWT相關(guān)知識(shí)感興趣的朋友一起看看吧
    2022-06-06
  • Mybatis增強(qiáng)版MyBatis-Flex的具體使用

    Mybatis增強(qiáng)版MyBatis-Flex的具體使用

    Mybatis-Flex一個(gè)用于增強(qiáng)MyBatis的框架,本文主要介紹了Mybatis增強(qiáng)版MyBatis-Flex的具體使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06
  • Java判斷List中相同值元素的個(gè)數(shù)實(shí)例

    Java判斷List中相同值元素的個(gè)數(shù)實(shí)例

    今天小編就為大家分享一篇Java判斷List中相同值元素的個(gè)數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • 高并發(fā)下如何避免重復(fù)數(shù)據(jù)產(chǎn)生技巧

    高并發(fā)下如何避免重復(fù)數(shù)據(jù)產(chǎn)生技巧

    這篇文章主要為大家介紹了高并發(fā)下如何避免重復(fù)數(shù)據(jù)的產(chǎn)生技巧詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • spring緩存自定義resolver的方法

    spring緩存自定義resolver的方法

    這篇文章主要為大家詳細(xì)介紹了spring緩存自定義resolver的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • java實(shí)現(xiàn)String字符串處理各種類型轉(zhuǎn)換

    java實(shí)現(xiàn)String字符串處理各種類型轉(zhuǎn)換

    在日常的程序開(kāi)發(fā)中,經(jīng)常會(huì)涉及到不同類型之間的轉(zhuǎn)換,本文主要介紹了String字符串處理各種類型轉(zhuǎn)換,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-10-10
  • SpringBoot整合mybatis-generator插件流程詳細(xì)講解

    SpringBoot整合mybatis-generator插件流程詳細(xì)講解

    這篇文章主要介紹了SpringBoot整合mybatis-generator插件流程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧
    2023-02-02
  • java編譯器和JVM的區(qū)別

    java編譯器和JVM的區(qū)別

    在本篇文章里小編給大家整理的是一篇關(guān)于java編譯器和JVM的區(qū)別的相關(guān)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2020-12-12
  • Java實(shí)力彈彈球?qū)崿F(xiàn)代碼

    Java實(shí)力彈彈球?qū)崿F(xiàn)代碼

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)力彈彈球?qū)崿F(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • @Autowired與@Resource在實(shí)現(xiàn)對(duì)象注入時(shí)的區(qū)別

    @Autowired與@Resource在實(shí)現(xiàn)對(duì)象注入時(shí)的區(qū)別

    這篇文章主要介紹了@Autowired與@Resource在實(shí)現(xiàn)對(duì)象注入時(shí)的區(qū)別,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2023-04-04

最新評(píng)論

左云县| 龙岩市| 大港区| 大竹县| 诸暨市| 吐鲁番市| 鹤壁市| 金平| 河北省| 黑龙江省| 宁陵县| 泰和县| 吴堡县| 涞源县| 满洲里市| 阿图什市| 平南县| 内乡县| 阜宁县| 平顺县| 仁布县| 泰来县| 福建省| 梨树县| 石首市| 西盟| 东莞市| 太原市| 渝北区| 周口市| 潞城市| 湘乡市| 吴江市| 宁远县| 襄城县| 凤翔县| 晋江市| 炎陵县| 子长县| 疏附县| 休宁县|