Java按值删除ArrayList

Java按值删除ArrayList,java,arrays,arraylist,Java,Arrays,Arraylist,我有这样一个ArrayList: for (Iterator<HashMap<String, String>> iterator = RegulerMenu.iterator(); iterator.hasNext();) { HashMap<String, String> stringArray = iterator.next(); if("R111".equals(stringArray.get("1"))) {

我有这样一个ArrayList:

for (Iterator<HashMap<String, String>> iterator = RegulerMenu.iterator(); iterator.hasNext();) {
    HashMap<String, String> stringArray = iterator.next();
            if("R111".equals(stringArray.get("1"))) {
                iterator.remove();
            }
        }
[{1=R111,2=红色,3=50000},{1=R123,2=蓝色,3=50000}]

我想按值删除数组(R111或R123)

如何使用array.remove方法删除这样的数组

我试过了
但是它对我的问题不起作用。

假设您的
数组列表是这样的:

List<String[]> arrayList = new ArrayList<>();
arrayList.add(new String[]{"R111","Red","50000"});
arrayList.add(new String[]{"R123","Blue","50000"});

谢谢pieter,我使用迭代器如下:

for (Iterator<HashMap<String, String>> iterator = RegulerMenu.iterator(); iterator.hasNext();) {
    HashMap<String, String> stringArray = iterator.next();
            if("R111".equals(stringArray.get("1"))) {
                iterator.remove();
            }
        }
for(迭代器迭代器=RegulerMenu.Iterator();迭代器.hasNext();){
HashMap stringArray=iterator.next();
if(“R111”.equals(stringArray.get(“1”)){
iterator.remove();
}
}

现在可以工作了,谢谢你,非常感谢。

谷歌上5秒的可能副本会找到你:@Stefan不,这是不同的数组。你的问题不是很清楚。您有一个包含数组的
ArrayList
,是否要根据数组中的值从
ArrayList
中删除数组?因此,当您基于“R111”删除时,您的结果将是
[{1=R123,2=Blue,3=50000}]
for (Iterator<HashMap<String, String>> iterator = RegulerMenu.iterator(); iterator.hasNext();) {
    HashMap<String, String> stringArray = iterator.next();
            if("R111".equals(stringArray.get("1"))) {
                iterator.remove();
            }
        }