equal和 使用出現的bug

2021-08-02 23:32:33 字數 514 閱讀 8539

使用poi匯出員工資訊時候,有乙個欄位eabsence是string型別,長度為1,用1表示員工到勤,用0表示員工缺席,在poi匯出時候我判斷這個是1還是0,如果是1則輸出「到勤」,如果是0則輸出「缺席」。

開始我是如下寫法:

hssfcell cell17 = row.createcell(6);

string index = employeelist.get(j).geteabsence();

system.out.println("******xx" + index);

if (index=="1")) else

cell17.setcellstyle(style3);

system.out.println("******xx" + index);這句話出來的結果是:

******xx1

******xx0

但是匯出結果顯示都是缺席,所以index=="1"錯誤獲取不到.

後來修改index.equals("1"),結果出來了

和 equal 的區別

public class equaltest 執行結果為 t1 t2 false t1 t2 t3 true t3 t4 true i1.equals i2 false i3.equals i1 i2 true i3.equals i4 true st1 st2 false st1 st2 st3 ...

equal和「 」的區別

對於基本資料型別,判斷兩個變數的值是否相等。equal 不能用於基本資料型別。只能用於類變數。對於基本資料型別要用其包裝類。因為物件變數的儲存的是物件在記憶體中的路徑,即記憶體位址。所以用 比較時,即使物件的值相等,但是他們的記憶體位址不同,所以 的結果為false。故 用於比較兩個變數的值是否相等...

equal和「 」的區別

因為物件變數的儲存的是物件在記憶體中的路徑,即記憶體位址。所以用 比較時,即使物件的值相等,但是他們的記憶體位址不同,所以 的結果為false。故 用於比較兩個變數的值是否相等,而不是變數引用的物件是否相等。equal用於比較兩個物件是否相同型別,值是否相等。總之 比較的是值 變數 棧 記憶體中存放...