java的基礎問題求大神看下

時間 2021-06-25 14:56:07

1樓:匿名使用者

str1==str3

str2==str5

這兩個是true,下面解釋下。

首先明確一下, a==b 這個表示式,只有a個b兩個變數的記憶體地址相等,返回才是true,是記憶體地址,不是看上去顯示的那個值。

equals比較不管地址,只要數值相等就可以返回true了

str1==str2 str1是用new string()新開闢的一個地址,str2也是新加了一個地址,這兩個雖然值相等,可是地址不一樣。

str1==str3,因為這個有這麼一句string str3=str1;這就是將str1的地址賦給了str3,所以他們兩個地址相同。

str1==str4 這兩個都是通過new string()出來的,呼叫new string就會新開闢一個地址,所以這兩個都是新開闢的,肯定地址不一致

str2==str5,這個str5穿件的時候沒有new string,就會優先使用已經存在的,前面string str2="hello";已經穿見過了,所以這次直接使用,所以他們地址是一致的

2樓:貓頭鷹

false true false true

理由參看

3樓:匿名使用者

str1==str3;

str2==str5;

但是為什麼不自己敲一下呢?

java初學者遇到的解決不了的問題,求大神指教

其實你就不應該把學號定義為student型別 你應該定義成int型別或者long 但更推薦在score類中新增student屬性 通過score.getstudent getstuid 獲取學號 不過,你在呼叫有參構造的時候,必須傳入student物件,而不只是傳入學號 public class s...

電腦裝機。求大神看下這套配置有啥問題沒。CPU Intel酷睿i7 3770K(盒)

6球球哥 恕我冒昧說一句,從你的裝機來看你不是老手,很多地方受到一些極端無腦論的影響。cpu確認你是不是有那麼高的需求,單純的遊戲娛樂i5足矣,如今的遊戲娛樂cpu效能嚴重過剩,高負荷多執行緒的作圖轉碼建模作業的話自然i7,但實在追求cpu效能也可以用便宜500元以上的e3 1230 v3,除了沒核...

求大神進來看看我電腦的配置,求大神幫我看下電腦配置!!急!!

完全沒有問題。推薦安裝 microsoft windows 7 professional 64位 版 32位作業系統無法支援大於4gb的記憶體容量 主機板 晶片組 音效卡 網絡卡驅動程式 顯示卡驅動程式 用於64位作業系統 顯示卡驅動程式 用於32位作業系統 驅動程式的安裝是在您安裝完成window...