簡體   English   中英

從列表中刪除值

[英]removing value from the list

我有一個查詢,我有一個這樣的地圖

  Map ppvValidatedinfo = new HashMap<String, List<String>>();

它包含這樣的值

   1  22 23 24 25

所以1是鍵(患者編號),值(scriptinfo)是22,23,24,25

現在我從后端獲取此值,如下所示

String ScriptInfo = ((IItemPluRx)item).getScriptInfo();

現在假設腳本信息的值為24

我想知道列表中值部分的Map中是否包含24,如果包含,那么我想從列表中刪除它,請告知如何實現

ppvValidatedinfo.get("1").remove("24");

它假定ppvValidatedinfo是通用的

 Map<String, List<String>> ppvValidatedinfo = new HashMap<String, List<String>>();

除此以外

((List)ppvValidatedinfo.get("1")).remove("24");

請注意,如果鍵不在地圖中,則可能會拋出NullPointerException,可以將其更正為

List<String> list = ppvValidatedinfo.get(key);
if (list != null){
   list.remove(value);
}

您將需要遍歷HashMap,拉出List對象,然后對其進行遍歷,如果找到搜索值,則將刪除具有相應鍵的HashMap條目。

您可以簡單地做到這一點。 刪除

如果存在指定元素,則從該列表中刪除該元素的第一次出現。 如果列表不包含該元素,則它保持不變。 更正式地講,刪除索引i最低的元素,使得(o == null?get(i)== null:o.equals(get(i)))(如果存在這樣的元素)。 如果此列表包含指定的元素(或者等效地,如果此列表由於調用而更改),則返回true。

List<String> value =  ppvValidatedinfo.get("1");
if(value != null){
   boolean deleted = value.remove("24");
}

暫無
暫無

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

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