[解決済み] Mapから複数のキーを効率的に削除するには?
2022-05-10 04:11:30
質問
私は
Map<String,String>
があり、多数のキーと値のペアがあります。その中から選択したキーを削除したい。
Map
. 次のコードは、私がそれを達成するために何をしたかを示しています。
Set keySet = new HashSet(); //I added keys to keySet which I want to remove.
次に.
Iterator entriesIterator = keySet.iterator();
while (entriesIterator.hasNext()) {
map.remove( entriesIterator.next().toString());
}
これは問題なく動作しています。より良い方法は何でしょうか?
どのように解決するのですか?
削除したい文字列がセットに含まれているとして、その文字列を削除するために
は
keySet
メソッド
と
map.keySet().removeAll(keySet);
.
keySet
は、このマップに含まれるキーのSetビューを返します。セットはマップにバックアップされているので、マップへの変更はセットに反映され、その逆も同様です。
作り込まれた例です。
Map<String, String> map = new HashMap<>();
map.put("a", "");
map.put("b", "");
map.put("c", "");
Set<String> set = new HashSet<> ();
set.add("a");
set.add("b");
map.keySet().removeAll(set);
System.out.println(map); //only contains "c"
関連
-
Java Exceptionが発生しました エラー解決
-
[解決済み】JavaでMap値をインクリメントする最も効率的な方法
-
Spring boot runs with Error creating bean with name 'entityManagerFactory' defined in class path resource
-
スレッド "main" での例外 java.lang.ArrayIndexOutOfBoundsException: 1
-
Eclipse起動エラー:javaは起動したが、終了コード=1を返した(ネット上の様々な落とし穴)
-
[解決済み] Pythonの辞書からキーを削除するにはどうしたらいいですか?
-
[解決済み] 2つのディクショナを結合する(両方に現れるキーの値を追加する)pythonicな方法はありますか?
-
[解決済み] JavaScriptにおけるマップとオブジェクトの比較
-
[解決済み] Mapのキーを配列に変換するには?
-
[解決済み] 値のペアのJavaコレクション?(タプル?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
myeclipseでコンパイルするとAntエラーが発生する javaの例外が発生しました。
-
SpringBootApplication を型解決できない。
-
プロジェクトの依存関係を解決できなかった 解決
-
Intellij IDEAのエラー「CreateProcess error=2, system could not find specified file」に対する完璧な解決策です。
-
スレッド "main" で例外発生 java.lang.ArrayIndexOutOfBoundsException: 0 at One1.main(One1.java:3)
-
スレッド "main" での例外 java.lang.ArrayIndexOutOfBoundsException: 1
-
node js npm gruntインストール、elasticsearch-head 5.Xインストール
-
org.glassfish.jersey.servlet.ServletContainer
-
IDEA パッケージステートメントの欠落
-
java -serverコマンドで「Error: no `server' JVM at ... jvm.dll」を解決する方法です。