簡體   English   中英

比較可以為空和空字符串(“”)的對象

[英]Compare objects which can be null and empty string (“”)

您好,我到了一個地步,我需要一個函數來比較來自不同來源的2個對象,此外它還比較字符串,而從一個來源中獲取一個null並從另一個來源中獲取一個空對象字符串。

我的代碼是

private static boolean areDifferent(Object o1, Object o2) {
    if ("".equals(o1)) {
        o1 = null;
    }
    if ("".equals(o2)) {
        o2 = null;
    }
    if (o1 == null || o2 == null) {
        return !(o1 == o2);
    }
    return !o1.equals(o2);
}

有沒有更好的方法來寫這個?

您可以為其使用三元組(並且我會將null轉換為“”):

return !(o1 == null ? "" : o1).equals(o2 == null ? "" : o2);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM