国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

深入解析Java編程中的boolean對象的運(yùn)用

2019-11-26 14:54:41
字體:
供稿:網(wǎng)友

只能是true或false兩個值之一的變量就是布爾(boolean)類型變量,true和false是布爾型直接量。你可以用下面的語句定義一個名稱為state的布爾型變量:

  boolean state=true

    該語句用true值對變量state進(jìn)行了初始化。你也可以使用賦值語句為一個boolean型變量賦值。例如,語句,

  state=false

    設(shè)置變量state的值為false.

    目前,我們除了為布爾變量賦值外,還不能進(jìn)行更多的操作,但正像你在下一章中將要看到的,布爾型變量在程序做判定時,特別是在我們能夠用表達(dá)式產(chǎn)生一個boolean型結(jié)果時顯得更加有用。

    有幾個組合布爾型數(shù)值的運(yùn)算符,包括:布爾與(AND),布爾或(oR)和布爾非(它們分別對應(yīng)&&、11、?。?以及產(chǎn)生boolean型結(jié)果的比較運(yùn)算符。與其現(xiàn)在抽象地學(xué)習(xí)它們,到不如我們推遲到下一章,在那里,我們可以在練習(xí)中看到如何應(yīng)用它們改變程序的執(zhí)行順序。

    有一點(diǎn)你需要注意,boolean型變量不同于其他的基本數(shù)據(jù)類型,它不能被轉(zhuǎn)換成任何其他的基本類型,其他的基本類型也不能被轉(zhuǎn)換成boolean類型。

Java生成Boolean對象的三種方法之比較
Java生成Boolean對象的第一種常見方法是通過new操作符

Boolean boolean1 = new Boolean(1==1);

第二種是通過靜態(tài)方法valueOf

Boolean boolean1 = Boolean.valueOf(1==1);

第三種是JDK1.5之后的自動裝箱

Boolean boolean1 = 1==1;

這三種方法有什么區(qū)別呢?
先看一段代碼

Boolean[] boolean1 = new Boolean[100];Boolean[] boolean2 = new Boolean[100];Boolean[] boolean3 = new Boolean[100];for (int i = 0; i < 100;i++){  boolean1[i] = Boolean.valueOf(1==1);}for (int i = 0;i < 100;i++){  boolean2[i] = new Boolean(1==1);}for (int i = 0; i < 100;i++){  boolean3[i] = 1==1;}System.out.println("valueOf: " + String.valueOf(boolean1[1] == boolean1[2]));System.out.println("new Boolean: " + String.valueOf(boolean2[1] == boolean2[2]));System.out.println("auto wrap: " + String.valueOf(boolean3[1] == boolean3[2]));

輸出結(jié)果是:

valueOf: truenew Boolean: falseauto wrap: true

為什么會這樣呢?
原因就在于用new創(chuàng)建的Boolean對象是不斷的新創(chuàng)建一個實(shí)例對象,而valueOf則是返回Boolean類里的靜態(tài)成員變量,不會產(chǎn)生大量相同的實(shí)例變量。自動包裝和valueOf類似.
實(shí)際上jdk文檔也是建議用valueOf代替new方式來創(chuàng)建Boolean類對象。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 博客| 吴江市| 图木舒克市| 紫阳县| 五莲县| 陈巴尔虎旗| 河东区| 伊金霍洛旗| 青州市| 白城市| 荔波县| 治多县| 正阳县| 沙田区| 台南市| 新沂市| 普兰县| 门源| 安徽省| 六盘水市| 秦皇岛市| 陇川县| 磐安县| 保康县| 沙雅县| 科技| 枣强县| 师宗县| 德清县| 龙泉市| 金阳县| 西乌珠穆沁旗| 陆丰市| 溧水县| 自治县| 涡阳县| 克山县| 闵行区| 固阳县| 专栏| 德阳市|