2014-06-07 228 views
-1

我有一個要求,我必須在單個流程中過濾具有多個過濾器值的List<Objects>。假設:如何過濾具有多個過濾器的對象列表

Class abc{ 
String name; 
String lastName; 
String middleName; 
} 

和過濾器值像firstName == AbhishekfirstName == rajeshfirstName == deepak

什麼是過濾這個最好的方法。還有一兩件事,如果我有firstName應用的過濾器和過濾返回列表,再次,如果我想在lastName應用過濾器比兩個過濾器應與現有的過濾器的工作原理與firstName額外的過濾器應lastName

回答

0
List<abc> finalList = new ArrayList<abc>(); 
for(abc singleElement:abcList){ 
    if(singleElement.getFirstName.equals("Abhishek")){ 
     finalList.add(singleElement); 
    } 
} 
應用

finalList現在是過濾列表。 您可以在lastList上爲lastName應用類似的過濾器。

0
public void filter(ArrayList<abc> testing, String filterWord) { 
    for (abc elem : testing) { 
     if (elem.name.equals(filterWord)) 
      testing.remove(elem); 
     if (elem.lastName.equals(filterWord)) 
      testing.remove(elem); 
     if (elem.middleName.equals(filterWord)) 
      testing.remove(elem); 
    }