public class TestandoListas {
    public static void main(String[] args) {
        String curso1 = "Polimorfismo";
        String curso2 = "Introdução a Orientação a Objetos";
        String curso3 = "Escreva seu Primeiro Código com Eclipse";
        List<String> cursos = new ArrayList<String>();
        cursos.add(curso1);
        cursos.add(curso2);
        cursos.add(curso3);
        //Método 1
        Collections.sort(cursos);
        //Método 2
        cursos.sort( (s1, s2) -> s1.compareTo(s2) ); //Lambda!
        //Método 3
        Collections.sort(cursos, new Comparator<String>(){  //Classe anonima!
        @Override
        public int compare(String c1, String c2) {
            return c1.compareTo(c2);
            }
        });
        //Método 4
        cursos.sort(new Comparator<String>(){  //Classe anonima!
        @Override
        public int compare(String c1, String c2) {
            return c1.compareTo(c2);
            }
        });
        //Método 5
        cursos.sort(new OrdemAlfabetica1());          
    }
}
class OrdemAlfabetica1 implements Comparator<String>{
    @Override
    public int compare(String c1, String c2) {
        return c1.compareTo(c2);
    }
}