基于所包含的对象的属性值的ArrayList过滤唯一对象 [英] Filter unique objects from an ArrayList based on property value of the contained object
本文介绍了基于所包含的对象的属性值的ArrayList过滤唯一对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何将一个ArrayList筛选唯一的对象。
列表< LabelValue> uniqueCityListBasedState =新的ArrayList< LabelValue>();
对于(LabelValue城市:cityListBasedState){
如果(!uniqueCityListBasedState.contains(市)){
uniqueCityListBasedState.add(市);
}
}
这是我的code。但问题是,我需要过滤不对象上,但在该对象内的属性的值。在这种情况下,我需要排除具有名称的对象。
这是 city.getName()
解决方案
列表< LabelValue> uniqueCityListBasedState =新的ArrayList< LabelValue>();
uniqueCityListBasedState.add(cityListBasedState.get(0));
对于(LabelValue城市:cityListBasedState){
布尔标志= FALSE;
对于(LabelValue cityUnique:uniqueCityListBasedState){
如果(cityUnique.getName()。等于(city.getName())){
标志=真实的;
}
}
如果(!标志)
uniqueCityListBasedState.add(市); }
How will I filter unique object from an arraylist.
List<LabelValue> uniqueCityListBasedState = new ArrayList<LabelValue>();
for (LabelValue city : cityListBasedState) {
if (!uniqueCityListBasedState.contains(city)) {
uniqueCityListBasedState.add(city);
}
}
This is my code. But the problem is that I need to filter not on the object but on the value of a property inside that object. In this case, I need to exclude the objects that has the name.
That is city.getName()
解决方案
List<LabelValue> uniqueCityListBasedState = new ArrayList<LabelValue>();
uniqueCityListBasedState.add(cityListBasedState.get(0));
for (LabelValue city : cityListBasedState) {
boolean flag = false;
for (LabelValue cityUnique : uniqueCityListBasedState) {
if (cityUnique.getName().equals(city.getName())) {
flag = true;
}
}
if(!flag)
uniqueCityListBasedState.add(city);
}
这篇关于基于所包含的对象的属性值的ArrayList过滤唯一对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文