2017-12-23 3 views
-5

만약 내가이 일을 잘못하고 있긴하지만 일식을 잘못 쓰면 단어를 입력해도 아무 것도 돌려주지 않을 것이다. 나는 코딩을 빨아 그래서 제발 도와주세요.while 루프가 java에서 palindrome을 찾지 않는 이유는 무엇입니까?

import cs1.Keyboard; 
public class Palindrome 
{ 
    public static void main (String[]args) 
    { 
     System.out.print("Enter a word: "); 
     String w = Keyboard.readString(); 
     int a = 0; 
     char n = w.charAt(a); 
     char j = w.charAt(w.length()-1); 
     while(a < j); 
     { 
      if (j!=n) 
       System.out.println("This word isnt a palindrome... try  again."); 
      if (j==n) 
      { 
       j--; 
       a++; 
      } 
       System.out.println("This is a palindrome!"); 
     } 
    } 
} 
+0

이 코드에는 많은 오류가 있습니다. 내가 자바에서 메서드를 작성하는 방법을 검토하는 것이 좋습니다. –

+3

'Keyboard' 클래스가 String을 올바르게 반환한다고 생각해도, while 루프는 그 뒤에';'를 갖습니다. 그것을 제거하십시오. 그런 다음 디버거를 사용하여 논리를 테스트하십시오. –

+1

그래서 빈'while' 루프에 대한 경고를 무시 했습니까? 나는 이클립스가 나쁜 생각이라고 말할 수 있다고 확신한다. – bcsb1001

답변

0

char j = w.charAt(w.length() - a); 

를 작성 시도하고 while 루프에서이 증가 할 때,() 문자열을 반환해야합니다 Keyboard.readString을, 또한 인덱스

n = w.charAt(a); 
j = w.charAt(w.length()-1); 

를 업데이트합니다. 스캐너를 사용해보십시오.