亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么檢索到的結果集字符串不適用于 .equals()

為什么檢索到的結果集字符串不適用于 .equals()

藍山帝景 2022-12-28 14:00:32
我正在從數據庫中檢索一些信息,我想檢查該值是否為空。雖然從數據庫中檢索到的字符串是“null”,但是 equals() 返回 false。我嘗試了 trim(),以防萬一檢索到的字符串中有任何空格     String code = product.retrieveCode();            System.out.println("the code is :"+ code);            if (code.equals("null")==true){                  // do this             }            else{                //   do that            }    請注意,數據庫沒有存儲任何數據。
查看完整描述

3 回答

?
慕后森

TA貢獻1802條經驗 獲得超5個贊

正如“Eran”所指出的,in 中的值code可能是一個null參考。做,

if (code == null)

代替

if (code.equals("null")==true)

這可能是因為當您調用它的方法時rs對象返回。當列值為 SQL NULL 時將返回。(參考nullgetString()ResultSetnull


查看完整回答
反對 回復 2022-12-28
?
白板的微信

TA貢獻1883條經驗 獲得超3個贊

您的邏輯和語法是正確的。在這種情況下,您的數據庫值可能正在為代碼分配空值,并且您正在檢查字符串“null”是否等于代碼。這將給出錯誤,因為它是空引用。確保你得到一個“空”,否則如果它是空的,只需檢查是否等于空格



查看完整回答
反對 回復 2022-12-28
?
繁星淼淼

TA貢獻1775條經驗 獲得超11個贊

它打印是。所以我不認為java做錯了什么


String code = "null";

if (code.equals("null")){  

     System.out.println("Yes");

} else{

   //   do that

}

我認為這是一個空引用。請執行以下代碼。


if (code==null){  

   System.out.println("Yes");

} else{

       //   do that

}


查看完整回答
反對 回復 2022-12-28
  • 3 回答
  • 0 關注
  • 132 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號