<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Greedy的工作室

    posts - 23,comments - 7,trackbacks - 0
    先看一段小程序:

    ---------------------------------------------------------------

    1.public class MyClass
    2.{
    3.      static String s1 = "I am unique!";
    4.      public static void main(String args[])
    5.      {
    6.            String s2 = "I am unique!";
    7.            String s3 = new String(s1);
    8.            System.out.println(s1 == s2);
    9.            System.out.println(s1.equals(s2));
    10.          System.out.println(s3 == s1);
    11.          System.out.println(s3.equals(s1));
    12.          System.out.println(TestClass.s4 == s1);
    13.     }
    14.}

    ---------------------------------------------------------------

    這段程序是非常簡(jiǎn)單的。但是為什么new出來(lái)的對(duì)象用==判斷為false,而基本類(lèi)型的直接賦值用==判斷就是true呢?

    這是因?yàn)樵贘AVA的對(duì)象存儲(chǔ)機(jī)制里,new出來(lái)的一定是對(duì)象,而對(duì)象在內(nèi)存中的存貯位置在Heap(堆)中,而基本類(lèi)型在程序中出現(xiàn)的比較頻繁(注:JAVA中的基本類(lèi)型為8中,分別是:boolean,char,byte,short,int,long,float,double),所以通過(guò)new產(chǎn)生這些對(duì)象而將其放入在heap中效率反而不高,所以JAVA直接采取C/C++的方式,也就是不以new來(lái)分配其空間,而是產(chǎn)生一種所謂的“automatic”變量(不在是reference的形式),來(lái)解決效率的問(wèn)題,此類(lèi)變量直接放數(shù)據(jù)值,并且置于stack(棧)中,因?yàn)閟tack在空間的分配和釋放上,效率要好的多。而恰恰是這種在內(nèi)存中位置的不同,在stack中為基本類(lèi)型變量分配空間時(shí),如果stack中有一樣的數(shù)據(jù)時(shí),將不在創(chuàng)建新的數(shù)據(jù),所以導(dǎo)致這個(gè)時(shí)候比較的兩個(gè)基本類(lèi)型值時(shí),即使用==也是true。

    因?yàn)镴AVA保存了基本類(lèi)型,而基本類(lèi)型(入int、char等)并不具備面向?qū)ο蟮奶攸c(diǎn),比如擁有類(lèi)的對(duì)象和方法。所以在JAVA中引入了new出來(lái)的基本類(lèi)型,比如character c = new character( )的形式。基于此,嚴(yán)格的講,JAVA并不是像人們所宣稱(chēng)的是徹底的純粹的面向?qū)ο笳Z(yǔ)言。

    簡(jiǎn)單點(diǎn)就是
    ==:
    1、比較的是操作符兩端的操作數(shù)是否是同一個(gè)對(duì)象
    2、兩邊的操作數(shù)必須是同一類(lèi)型的(可以是父子類(lèi)之間)才能編譯通過(guò)。
    3、比較的是地址,如果是具體的阿拉伯?dāng)?shù)字的比較,值相等則為T(mén)RUE,如:
          int a=10 與 long b=10L 與 double c=10.0都是相同的(為true),因?yàn)樗麄兌贾赶虻刂窞?0的堆
    equals:
    1、比較的是兩個(gè)對(duì)象的內(nèi)容是否一樣

    posted on 2008-09-03 21:02 greedy 閱讀(233) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Java技術(shù)
    主站蜘蛛池模板: 亚洲国产精品成人综合色在线婷婷 | 亚洲综合色成在线播放| 久久久久久99av无码免费网站 | 亚洲成A人片在线观看无码不卡| 日日AV拍夜夜添久久免费| 182tv免费视视频线路一二三| 国产VA免费精品高清在线| 亚洲中文字幕久久精品蜜桃| 亚洲免费在线播放| 亚洲VA中文字幕无码一二三区 | 亚洲中文无码线在线观看| 亚洲精品国产字幕久久不卡| 免费a级毛片大学生免费观看 | 亚洲日本在线电影| 亚洲图片校园春色| 中文字幕亚洲综合久久2| 久久精品国产96精品亚洲| 久久久青草青青国产亚洲免观| 拔擦拔擦8x华人免费久久| 毛片A级毛片免费播放| 最近高清中文字幕无吗免费看| 99re在线免费视频| 无码一区二区三区免费| 成在人线av无码免费高潮喷水| 亚洲视频在线免费| caoporm超免费公开视频| 久香草视频在线观看免费| 青青青视频免费观看| 高h视频在线免费观看| 污网站在线免费观看| 深夜a级毛片免费视频| 九九免费观看全部免费视频| 一级美国片免费看| 国产激情久久久久影院老熟女免费| eeuss在线兵区免费观看| 天堂在线免费观看| 免费国产99久久久香蕉| 久久免费观看国产99精品| 91精品免费高清在线| 国产免费一区二区三区| 最近免费中文字幕大全视频|