fork download
  1. import java.util.*;
  2.  
  3. class Program {
  4. public static void main(String[] args) {
  5. Scanner ent = new Scanner(System.in);
  6. System.out.println("Digite a palavra/frase:");
  7. // crio as strings
  8. String s = ent.nextLine();
  9. String r = ent.nextLine();
  10. // verifico se têm o mesmo tamanho
  11. if (isAnagram(s, r)) System.out.println("É anagrama");
  12. }
  13.  
  14. public static boolean isAnagram(String s1, String s2) {
  15. //se as duas strings não tem o mesmo tamanho, não é anagrama
  16. if ( s1.length() != s2.length() ) return false;
  17. //tranfroma em arrays para poder ordenar
  18. char[] c1 = s1.toCharArray();
  19. char[] c2 = s2.toCharArray();
  20. //ordena para garantir a comparação simplificada
  21. Arrays.sort(c1);
  22. Arrays.sort(c2);
  23. //cria as novas strings baseadas nos arrays ordenados
  24. String sc1 = new String(c1);
  25. String sc2 = new String(c2);
  26. return sc1.equals(sc2);
  27. }
  28. }
  29.  
  30. //https://pt.stackoverflow.com/q/42319/101
Success #stdin #stdout 0.06s 2184192KB
stdin
elvis
lives
stdout
Digite a palavra/frase:
É anagrama