public class OrdenaStrings {
public static void main(String[] args) {
List<String> palavras = new ArrayList<>();
palavras.add("alura online");
palavras.add("casa do código");
palavras.add("caelum");
System.out.println(palavras);
Collections.sort(palavras);
System.out.println(palavras);
// Collections.sort(palavras, new ComparadorPorTamanho());
palavras.sort(new ComparadorPorTamanho());
System.out.println(palavras);
palavras.forEach(new ImprimeNaLinha());
palavras.replaceAll(new OperadorUnario());
System.out.println(palavras);
}
}
class ComparadorPorTamanho implements Comparator<String>{
@Override
public int compare(String s1, String s2) {
return s1.length() - s2.length();
}
}
class ImprimeNaLinha implements Consumer<String> {
public void accept(String s) {
System.out.println(s);
}
}
class OperadorUnario implements UnaryOperator<String>{
@Override
public String apply(String s) {
return s.toUpperCase();
}
}