【參考】integer的裝箱和拆箱
integer a = 1;
integer b = 2;
integer c = 3;
integer d = 3;
integer e = 321;
integer f = 321;
long g = 3l;
long h = 2l;
system.out.println(c == d);
system.out.println(e == f);
system.out.println(c == (a + b));
system.out.println(c.equals((a+b)));
system.out.println(g == (a+b));
system.out.println(g.equals(a+b));
system.out.println(g.equals(a+h));
對於這一段**,有幾個點值得關注:
/**
* compares this object to the specified object. the result is
* if and only if the argument is not
* and is a object that
* contains the same value as this object.
** @param obj the object to compare with.
* @return if the objects are the same;
* otherwise.
*/public boolean equals(object obj)
return false;
}
ps:這裡的呼叫者是long型別,但是傳入引數的自動裝箱型別是由引數本身決定的。比如:system.out.println(g.equals(a+b));
編譯後為:system.out.println(g.equals(integer.valueof(a.intvalue()+b.intvalue())));這裡的g是乙個long型別,所以obj instanceof long 直接return false;
【參考】 single number 的補充部分
java Integer 比較的問題
習慣上把integer和int型別混為一談 所以習慣的把 integer 的a 和 integer 的b使用 進行了比較,結果兩個值不相等 system.out.println a b 列印false 老是忘記在給integer包裝類賦值的時候,他是呼叫public static integer v...
Java Integer和String的比較操作
一 實驗 先看一組實驗,會有不少驚奇的發現 128,127 範圍的 自動裝箱 box 同值是同乙個物件 integer a 1 integer b 1 system.out.println i1 a b true 不在 128,127 範圍裝箱的integer,值相同也不是同乙個物件 a 128 b...
自相關互相關卷積的 自相關與互相關
自相關 autocorrelation 也叫序列相關,是乙個訊號與其自身在不同時間點的互相關。非正式地來說,自相關是對同一訊號在不同時間的兩次觀察,通過對比來評判兩者的相似程度。自相關函式就是訊號x t 和它的時移訊號x t 的乘積平均值。它是時移變數 的函式。這是從書上抄來的話,到底是什麼意思呢?...