We read:
public static void findChicagoImperative(final List<String> cities) {
boolean found = false;
for(String city : cities) {
if(city.equals("Chicago")) {
found = true;
break;
}
}
This irked me a bit in the first edition already.
Why not
public static void findChicagoImperative(final List<String> cities) {
boolean found = false;
for(String city : cities) {
if("Chicago".equals(city)) { // null safe
found = true;
break;
}
}
or even
public static void findChicagoImperative(final List<String> cities) {
boolean found = false;
for(String city : cities) {
found = "Chicago".equals(city);
if (found) {
break;
}
}