In your Bus model class add a boolean method isAirConditioned(), so when your looping through the list simply do it like this:
public class Bus{
...
public boolean isAirConditioned(){
String coachDesc = getCoachDesc();
if(coachDesc.contains("NON AC")
return false;
return true;
}
}
And modify your for loop as
for (int j = 0; j < busListResponses.size(); j++) {
if (busListResponses.get(j).isAirConditioned()) {
filterResponse.add(busListResponses.get(j));
}
}
Edit:
Add this condition before your for loop
String strvalue;
if((!strvalue.contains("AC") || strvalue.contains("NON AC"))|| (strvalue.contains("AC") && !strvalue.contains("NON AC" )))
for (int j = 0; j < busListResponses.size(); j++) {
if (busListResponses.get(j).getCOACHDESC().contains(strvalue) {
filterResponse.add(busListResponses.get(j));
}
}
If you encounter same problem with sleeper and semi sleeper, use similar logic.
Edit2: this should be your conditional statment before the for loop to include all the parameters
if(((strvalue.contains("Semi Sleeper") || strvalue.contains("NON AC")||
strvalue.contains("Seater")) || (strvalue.contains("AC") &&
!strvalue.contains("NON AC" )) || (strvalue.contains("Sleeper") &&
!strvalue.contains("Semi Sleeper")))