##兩種比較 ==和equals()方法 ##
integer s = new integer(9)
integer t = new integer(9)
long u = new long(9)
****************************************====
integer a =1000 ,integer b = 1000
integer c = 100 ,integer d = 100
****************************************====
string s = "hello"
sring t ="hello"
string r = new string("hello");
***equals方法 ***
public boolean equals(object obj)
return false;
}
integer型別和long型別,兩種不同型別的引用不能進行**==**比較。
基本資料型別之間沒有equals()方法。
int a =1 ,int b =1 。
a==b正確
a.equals(b)沒有這種比較。
new integer()和int比較,integer會自動拆箱,==和equals()均為true
s.equals(9),true
s==9,true
new integr()和new integr(),比較==為false,equals()為ture
s==t,false
s.equals(t),true 同理 s.equals(new integer(9)),true
integer和integer比較,由於直接賦值會自動裝箱。
(1)值在[-128,127]之間時,不會建立新的integer物件,而是直接從快取integercache中獲取建立好的integer物件
c.equals(d)結果為true
(2)大於這個區間,則會new新的integer
a.equals(b)比較結果為false
6.==比較兩個記憶體位址是否相同,相同為true,不同為false。
equals()比較字串內容是否相同,相同為true。
(1)在字元緩衝池中,若已有字串,則直接賦值不需要再建立乙個字串。
s == t,true
(2)若果new建立了乙個新的字串。
此時位址不同:s ==r,false。
字串內容相同的話,s.equals( r ),true。
Java執行緒的兩種建立方式及優劣比較
1 通過實現runnable介面執行緒建立 1 定義乙個類實現runnable介面,重寫介面中的run 方法。在run 方法中加入具體的任務 或處理邏輯。2 建立實現runnable介面的類的物件。3 建立乙個thread類的物件,需要封裝前面runnable介面實現類的物件。介面可以實現多繼承 4...
Java中建立String的兩種方式
建立乙個string型別的變數一般有兩種方法,如下 public class test 那麼為什麼會存在這兩種建立方式呢,它們在記憶體中的表現形式各有什麼區別?第一種情況 建立的str1,str2兩個字串,和equals比較返回都為true,這是因為str1,str2都指向了方法區的同乙個字串。所以...
java分頁的兩種方式
方式其實都非常的簡單,一種是資料庫分頁用limit限制取出條數,一種是在業務邏輯裡面分頁,我用的是jdbc,所以每次游標指定到一定的條數進行展示。因為只是簡單的進行原理學習,所以並沒有對 方面對嚴格的書寫,明白原理就好。主要的地方就是在進行資料庫查詢的時候,假設有一張表flownode,sql語句如...