【发布时间】:2019-04-15 06:34:20
【问题描述】:
我有一个自定义的 ArrayList 和 String 数组。我想要的是删除 ArrayList 中与 String 数组的值匹配的行。
我的数组列表.....
ArrayList<SqlFavHeaderData> hList = db.getAllHeaderDetails();
SqlFavHeaderData
private String mId;
private String mType;
private double mPrice;
private String mBeds;
字符串数组....
String[] ss = new String[i];
这具有与 ArrayList 中的 mId 匹配的值。
我想要的是从 ArrayList 中删除与 mId 比较的项目,这些项目与字符串数组中的值匹配。
我试过这样。但没有运气......
for (int i = 0; i < 10; i++) {
hList.remove(ss[i]);
}
【问题讨论】:
-
如果你想使用这样的收集方法,你需要为你的类实现一个有意义的
equals()版本。除此之外:了解 java 命名约定。匈牙利的概念mSomething在java 中不是推荐的做法。并首先使用有意义的名称。 ss肯定不是。 -
试试这个
ArrayList<String> hList = = db.getAllHeaderDetails(); String[] ss = new String[i]; for (int i = 0; i < hList.size(); i++) { if (hList.get(i).equalsIgnoreCase(ss[i])){ hList.remove(ss[i]); } }
标签: java android arrays arraylist