gpt4 book ai didi

android - 如何只向 ArrayList> 添加唯一值?

转载 作者:行者123 更新时间:2023-11-30 02:47:47 25 4
gpt4 key购买 nike

我正在尝试在我的应用程序中执行以下操作:

我得到一些 String来自一些 Textviews 的值.我将此值添加到 ArrayList<HashMap<String,String>>通过以下方式,其中

cart_list类型为 HashMap<String,String>>购物车的类型是 ArrayList<HashMap<String,String>>

    cart_list.put("quantity",""+qty);
cart_list.put("item_id"+item_id_number,""+item_id_number);
cart_list.put("Category",Itemname);
cart_list.put("Details",Item_details);
cart_list.put("Price",Item_price);
cart_list.put("Currency",Item_currency);
cart_list.put("images",images);
cart.add(cart_list);

我只想向 cart 添加唯一值.如何检查给定值是否已存在于 `ArrayList> 中。请逐步告诉我该怎么做。

最佳答案

试试这个..

for(int i = 0; i < cart.size(); i++){
if(cart.get(i).containsKey(yourkey))
Toast.makeText(getBaseContext(), "The key already present in HashMap.", Toast.LENGTH_SHORT).show();

if(cart.get(i).containsValue(yourvalue)){
String key = getKeyByValue(cart.get(i), yourvalue);
if(key.equals(yourkey)){
Toast.makeText(getBaseContext(), "The keys are same having same value.", Toast.LENGTH_SHORT).show();
}
}

}

和 getKeyByValue 方法

public static <T, E> T getKeyByValue(Map<T, E> map, E value) {
for (Entry<T, E> entry : map.entrySet()) {
if (value.equals(entry.getValue())) {
return entry.getKey();
}
}
return null;
}

在这个yourkey中,您要检查的给定 key (字符串数量)已经存在

yourvalue 就像你的cart 中的 Itemname HashMap value

关于android - 如何只向 ArrayList<HashMap<String,String>> 添加唯一值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24735131/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com