jsonStr
で特定のキーが存在するかどうかを確認する方法は、jsonStr.has("key")
を使用して確認しています。複数のキーが存在するかどうかを確認するには、それらを別々にチェックする必要があります。 Javaのメソッドはありますか?提供されたjsonStr
に存在しないものがあれば、それらのキーのリストを効率的にチェックできますか?提供されたjsonObjectにキーがない場合、効率的にチェックする方法はありますか?
1
A
答えて
1
リスト/セットに必要なすべてのキーを追加します。そして、あなたはすべてのキーは基本的にJSONObject
1
に存在しているかどうかを確認するために
myKeyList.stream().allMatch(key->jsonStr.has(key))
を使用することができます...これらJsonObjectの実装の第
大半は、JSONのプロパティが保持されているjava.util.Map
を使用しています。主にMapには1つのメソッドboolean containsKey(Object key);
しかないので、ほとんどの場合でなければ、の実装では複数のキーをチェックする方法がありません。
1
あなたがJsonObject
の実装を見れば、それはすべての要素を格納するためにLinkedTreeMap
を使用しています。
private final LinkedTreeMap<String, JsonElement> members =
new LinkedTreeMap<String, JsonElement>();
(それはまたSet<String>
を返しますkeySet()
方法を、持っていますが、implementionがまったく同じ機能を使用していますfind()
)をhas()
としています。
だから、あなたは次のオプションがあります。あなたはJSONObject
- 反復デシリアライズ中に存在するキーの
Set<String>
を作成する独自のデシリアライザを作成あなたはSet<String>
の希望キーと効果的に比較することができます。
関連する問題
- 1. HashMapに同じ値にマップされたキーが含まれているかどうかをチェックする効率的な方法はありますか?
- 2. パーキングドメインを効率的にチェックする方法はありますか?
- 3. StripeException:無効なAPIキーが提供されました:Stripe.Net
- 4. ハッシュキー/値が存在する場合、与えられたキーの配列でハッシュ値を返すより効率的な方法はありますか?
- 5. サーブレット - ダウンロード可能なファイルを提供する方が効率的ですか?
- 6. 効率的な方法はありますか?
- 7. このように文字列を効率的に切り替える方法はありますか?より効率的なものはありますか?
- 8. テキストベースのウェブページをより効率的に提供するにはどうすればよいですか?
- 9. numpy.ndarrayをリストに変換する効率的な方法はありますか?
- 10. これをもっと効率的にする方法はありますか?
- 11. Pycurl SSLセッションIDがSSLキーで提供されていない場合
- 12. Androidの場所api:提供されたAPIキーが無効です
- 13. Firebase Facebookのログイン:要求に無効なAPIキーが提供されました
- 14. フォームがwebviewに提出された場合、私が検出できる方法はありますか?
- 15. データベースをチェックし、利用できない場合に追加する最も効率的な方法
- 16. グループ化されたリストを作成するより効率的な方法はありますか
- 17. これを行うより効率的な方法はありますか?
- 18. IDictionaryのマージ - これより効率的な方法はありますか?
- 19. 次のコードをより効率的にする方法はありますか?
- 20. 外部提供バッファをバイトにコピーする最も効率的な方法は何ですか
- 21. 効率的にSQLクエリを実行したり、POSTGRESで結合する方法はありますか?
- 22. ランダム化されたリストにURLの一部が含まれていないことを確認するより効率的な方法はありますか?
- 23. 正確に一致するものがない場合にのみ、LINQに包含マッチを使用する効率的な方法がありますか?
- 24. 1pxより大きい場合、htmlのバックグラウンドがより効率的に繰り返されますか?
- 25. SQLでネストされたリレーションシップを簡単かつ効率的にクエリする方法はありますか?
- 26. キーが設定されていない場合、キーを設定する - どの方法が最も効率的ですか?
- 27. Rubyオブジェクトのコレクションからソートされたハッシュを構築する効率的な方法はありますか?
- 28. あなたのプログラムをより効率的に書く方法
- 29. C#のURLから401応答を効率的にチェックする方法はありますか?
- 30. 文字列が異なる書式で提供されている場合、StringをDateTimeに解析する方法はありますか?