簡體   English   中英

Java無法識別jSonObject中的空值

[英]Java not recognizing null value in jSonObject

我有一個具有鍵值對的jSonObject,我想將其解析為ContentValues。 在解析期間,我想檢測該值是否為null,如您在圖片中所見,該值為null,但仍然不能被if語句捕獲。 因為它是一個json,並且可能將null用作字符串,所以我嘗試使用value.equals(“ null”),但均無效。

調試信息

if ( value == null | value. equals("null") || tableField.getType() == FIELD_TYPE_NULL ) {
    DO SOME CODE
}

怎么了 ?

您的第一個“ OR”只是單個管道“ |” 而不是雙管道'||'

if ( value == null || value.equals("null") || tableField.getType() == FIELD_TYPE_NULL ) {
    DO SOME CODE
}

試試吧

if ( value == null || value.equals("null") || tableField.getType() == FIELD_TYPE_NULL ) {
    DO SOME CODE
}

嘗試使用value.isNullObject()函數。 如果對象為NULL,則返回true。

if ( value == null | value. equals("null") || tableField.getType() == FIELD_TYPE_NULL ) {
    DO SOME CODE
}

盡管在您的情況下,如果值是“ null”,則上述結果將是

value == null | value. equals("null")// first condition in if statement --->if(false|true)---> if(true)

您正在使用按位或非邏輯或

它應該是

  if ( value == null || value. equals("null") || tableField.getType() == FIELD_TYPE_NULL ) {
        DO SOME CODE
    }

從jsonobject檢索值的常用方法是使用getString()方法。 因此,您必須使用value = jsonObject.getString(columnName); value變量分配 然后您需要檢查條件為

if ( value == null || value. equals("null") || tableField.getType() == FIELD_TYPE_NULL ) 
{

}

您缺少一個| 在你的第一個條件

暫無
暫無

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

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