我的漫漫程序之旅

          專注于JavaWeb開(kāi)發(fā)
          隨筆 - 39, 文章 - 310, 評(píng)論 - 411, 引用 - 0
          數(shù)據(jù)加載中……

          兩道Java面試題解析

          內(nèi)容摘要:本文通過(guò)寫出代碼結(jié)果的方式向你解析了java面試中常面倒的幾個(gè)知識(shí)點(diǎn):string,equals(),==.


          1.寫出下面代碼的結(jié)果

           

           public class TestString{
              
          public static void link(String a){
                  a 
          += "World";
              }


              
          public static void main(String[] args){
                  String a 
          = "Hello";
                  link(a);
                  System.out.println(a);
              }

           }


          答: 這道題考兩個(gè)方面:

          1). String對(duì)象的內(nèi)容是不能改變的,a+="World"并不是把a(bǔ)所指對(duì)象改變,

            而是先生成一個(gè)臨時(shí)String對(duì)象,其值為a+"World",然后在把這個(gè)臨時(shí)

            對(duì)象賦給a.

          2). Java中函數(shù)參數(shù)傳遞方式為Call by value,link方法中會(huì)生產(chǎn)a的一個(gè)

            拷貝,同樣指向a所指的對(duì)象,綜合以上兩點(diǎn),得出結(jié)果為 Hello

           

          2.寫出下面代碼的結(jié)果

           

          System.out.println("ja"+"va" == "java");

           

          答:"=="用來(lái)比較對(duì)象的引用,而equals()用來(lái)比較對(duì)象的內(nèi)容,但是如果是字符串常量,用"=="也可以比較內(nèi)容

          是否相等,"ja"+"va"和"java"都是字符串常量,因此結(jié)果為true

          同理,下面代碼結(jié)果也是true

           

          final String str = "java";

          System.out.println(str
          =="java")

           



          posted on 2007-12-15 15:21 々上善若水々 閱讀(1542) 評(píng)論(3)  編輯  收藏 所屬分類: Java筆試與面試

          評(píng)論

          # re: 兩道Java面試題解析  回復(fù)  更多評(píng)論   

          比較詳細(xì),謝謝.
          2007-12-16 11:20 | javascript

          # re: 兩道Java面試題解析  回復(fù)  更多評(píng)論   

          "ja"+"va"在編譯的時(shí)候會(huì)優(yōu)化,直接編譯為"java"
          2008-02-23 11:18 | Edward's

          # re: 兩道Java面試題解析  回復(fù)  更多評(píng)論   

          學(xué)到了 thanks
          2009-03-17 17:04 | 鳥生魚湯
          主站蜘蛛池模板: 镇赉县| 古丈县| 奈曼旗| 忻城县| 北京市| 邹城市| 固始县| 安平县| 泉州市| 贵州省| 六枝特区| 深水埗区| 榆林市| 扶绥县| 昌宁县| 乌什县| 葵青区| 格尔木市| 玉溪市| 广州市| 汝阳县| 保山市| 武平县| 娱乐| 刚察县| 仲巴县| 安阳县| 涿州市| 南投市| 噶尔县| 怀集县| 墨脱县| 彩票| 涿州市| 万山特区| 和田市| 台北县| 博野县| 桃园市| 崇文区| 杂多县|