十年網(wǎng)站開發(fā)經(jīng)驗 + 多家企業(yè)客戶 + 靠譜的建站團隊
量身定制 + 運營維護+專業(yè)推廣+無憂售后,網(wǎng)站問題一站解決
第一行輸出結果是abc:
網(wǎng)站建設哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁設計、網(wǎng)站建設、微信開發(fā)、小程序定制開發(fā)、集團企業(yè)網(wǎng)站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了河西免費建站歡迎大家使用!
原因是:
s.substring(1);
s.replace("bc", "xyz");
這兩句話沒有任何作用 ~因為String是屬于值傳遞~
第二行 輸出結果是false:
原因是:
用==比較字符串,是比較兩個變量本身的值,即兩個對象在內存中的首地址。用equals比較就會為true,equals比較的是內容是否相同。
附:
1、值傳遞、引用傳遞的區(qū)別:
值傳遞:(形式參數(shù)類型是基本數(shù)據(jù)類型):方法調用時,實際參數(shù)把它的值傳遞給對應的形式參數(shù),形式參數(shù)只是用實際參數(shù)的值初始化自己的存儲單元內容,是兩個不同的存儲單元,所以方法執(zhí)行中形式參數(shù)值的改變不影響實際參數(shù)的值。
引用傳遞:(形式參數(shù)類型是引用數(shù)據(jù)類型參數(shù)):也稱為傳地址。方法調用時,實際參數(shù)是對象(或數(shù)組),這時實際參數(shù)與形式參數(shù)指向同一個地址,在方法執(zhí)行中,對形式參數(shù)的操作實際上就是對實際參數(shù)的操作,這個結果在方法結束后被保留了下來,所以方法執(zhí)行中形式參數(shù)的改變將會影響實際參數(shù)
2、用==比較和用equals比較的區(qū)別:
對于字符串變量來說,使用“==”和“equals()”方法比較字符串時,其比較方法不同.
“==”比較兩個變量本身的值,即兩個對象在內存中的首地址.
“equals()”比較字符串中所包含的內容是否相同.
if(j==10)里面的語句只有第一次循環(huán)時執(zhí)行了,輸出0,10
然后j--,這時j是9,而后面的j++和for()里面的j--抵消了,j還是9,
以后的9次循環(huán)里,if后面的語句再也沒有執(zhí)行了,而j++和for()里面的j--每次都抵消,所以j一直是9,
i每次++,一共執(zhí)行10次,從0到9,所以最后輸出i和j是9,9
應該是B,
在java世界中,所有的對象都直接或間接是Object的子類.
參照JLS,結果會是x=6,y=70
這種代碼毫無意義,不要研究也不要去寫這樣的代碼。