簡體   English   中英

如何檢查數據是否為映射(鍵值對)?

[英]How to check if a data is a map (key-value pairs)?

在處理數據(來自Firebase的DataSnapshot)之前,我需要檢查返回的數據在通過接口反序列化之前是否已正確格式化為Map。

看完網絡后,我發現用Kotlin編碼的以下示例:

override fun deserialize(input: DataSnapshot): StockPrice {
    val data = input.value
    return if (data is Map<*, *>) {
        StockPrice(
            input.key!!,
            (data["price"] as Number).toFloat(),
            Date(data["time"] as Long),
            true
        )
    }
    else {
        throw Deserializer.DeserializerException("input.value wasn't a Map")
    }
}

如何在Android Studio和Java中實現這種行為?

使用此代碼。

      StockPrice deserialize(DataSnapshot input){

                  if (input instanceof Map<>)
                   {
                // todo if input is a map<>
                   } else { 
                 //throw error or send message to user
            throw Deserializer.serializeException(" that is not a 
               map")
             }
  }

希望這個能對您有所幫助

暫無
暫無

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

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