Desde Java 8 , puede usar el método forEach () desde la interfaz Iterable .
Es un método predeterminado. Como argumento, toma un objeto de clase, que implementa la interfaz funcional Consumer . Puede implementar Consumer localmente de tres formas:
Con clase anónima :
houseAddress.forEach(new Consumer<String>() {
@Override
public void accept(String s) {
System.out.println(s);
}
});
expresión lambda :
houseAddress.forEach(s -> System.out.println(s));
o usando la referencia de método :
houseAddress.forEach(System.out::print);
Esta forma de impresión funciona para todas las implementaciones de interfaz Iterable .
Todos ellos le brindan la forma de definir cómo se imprimirán los elementos, mientras que toString () impone la impresión de la lista en un formato.