2017-02-27 3 views
-1

두 문자열이 서로의 아나그램인지 확인하는 함수를 작성하려고합니다. 함수에 대문자를 제외하고는 두 개의 문자열을주고, 비교할 때 대소 문자를 무시하더라도 실패합니다.Anagram-compare 두 문자열

테스트 케이스 :

hello 
Hello 

이 입력에 대한 내 출력은 철자 바꾸기 아니지만, 철자 바꾸기입니다

소스 코드 :

static boolean isAnagram(String a, String b) { 

    char[] a1 = a.toCharArray(); 
    char[] b1 = b.toCharArray(); 
    Arrays.sort(a1); 
    Arrays.sort(b1); 
    String x = new String(a1); 
    String y = new String(b1); 

    int i=0,flag=0; 
    while(i < a1.length) 
    { 
     if(x.equalsIgnoreCase(y)){ 
      i++; 
     } 
     else 
      return false; 
    } 
    return true; 
} 
+0

소스 코드 형식을 정리하고 설명 용 소개를 추가했습니다. – David

답변

0

당신은 while 루프가 필요하지 않습니다 ;

static boolean isAnagram(String a, String b) { 

    char []a1= a.toLowerCase().toCharArray(); 
    char []b1= b.toLowerCase().toCharArray(); 

    Arrays.sort(a1); 
    Arrays.sort(b1); 

    String x= new String(a1), y = new String(b1); 

    return x.equals(y); 

    } 
+0

네 도움에 정말로 감사드립니다. –