fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. class Pessoa {
  8. private String nome;
  9. private int idade;
  10.  
  11. public Pessoa(String nome, int idade) {
  12. this.nome = nome;
  13. this.idade = idade;
  14. }
  15.  
  16. public String getNome() {
  17. return nome;
  18. }
  19.  
  20. public void setNome(String nome) {
  21. this.nome = nome;
  22. }
  23.  
  24. public int getIdade() {
  25. return idade;
  26. }
  27.  
  28. public void setIdade(int idade) {
  29. this.idade = idade;
  30. }
  31.  
  32. public String obterInformacoes(){
  33. return "Nome: " + nome + ", Idade: " + idade;
  34. }
  35. }
  36.  
  37. /* Name of the class has to be "Main" only if the class is public. */
  38. class Ideone
  39. {
  40. private static List<Pessoa> listaPessoas = new ArrayList<Pessoa>();
  41.  
  42. public static void main (String[] args) throws java.lang.Exception
  43. {
  44. listaPessoas.add(new Pessoa("Ana", 10));
  45. listaPessoas.add(new Pessoa("Filomena", 11));
  46. listaPessoas.add(new Pessoa("Martim", 15));
  47. listaPessoas.add(new Pessoa("Ana", 21));
  48. listaPessoas.add(new Pessoa("Ana", 9));
  49.  
  50.  
  51. listaPessoas.sort((p1,p2)-> {
  52. int compNomes = p1.getNome().compareTo(p2.getNome());
  53. return compNomes == 0 ? p1.getIdade()-p2.getIdade():compNomes;
  54. });
  55. listaPessoas.forEach(x->System.out.println(x.obterInformacoes()));
  56. }
  57. }
Success #stdin #stdout 0.11s 4386816KB
stdin
Standard input is empty
stdout
Nome: Ana, Idade: 9
Nome: Ana, Idade: 10
Nome: Ana, Idade: 21
Nome: Filomena, Idade: 11
Nome: Martim, Idade: 15