我想基于数组中多个属性的值消除可重复的值。例如:我有一个包含动态变化值的arraylist。我正在寻找基于其ID的列表中的重复值,然后将其删除。我现在需要的是,我想查看日期和名称(即2个属性),并在其中找到可重复的值并将其删除。我已经通过查看像这样的单个属性值来完成。有人可以帮忙吗
List<String> dups = new ArrayList<>();
Set<String> names = new HashSet<>();
if(isToday(sum.getDate())){
String studentname =sum.getName;
if (!names.add(studentname) ){
dups.add(studentname);
}
}
if (dups.size() > 0) {
StringBuilder sb = new StringBuilder("There are duplicates: ");
for (String studentname : dups) {
sb.append(studentname).append(", ");
}
String msg = sb.toString();
msg = msg.substring(0, msg.length() - 2);
Toast.makeText(getActivity(), msg, Toast.LENGTH_SHORT).show();
}