2016-11-27 1 views
-4
public boolean isANumber (String s) 
{ 
    for (int i = 0; i < s.length(); i++) 
    { 
     if (!Character.isDigit(s.charAt(i))); 
     { 
     return false; 
     } 
    } 
    return true; 
} 

이 메서드는 Apache Commons Lang에서 가져 와서 조금 더 짧게 편집했습니다. 입력이 문자인지 숫자인지에 상관없이 출력은 항상 거짓입니다. 아무도 왜 제발 말해 줄래? :) 사전에Character.isDigit()를 사용하는 메서드 모든 것에 대해 false를 반환합니다.

감사합니다,

A.Nur

+8

세미콜론을보세요. 그리고 그 말은 if 문 끝의 세미콜론을 없애는 것을 의미합니다. – 3kings

+0

if-block은 세미콜론만으로 나타나기 때문에 코드에 아무런 영향을 미치지 않으며 항상 {} 블록 문에 false를 반환합니다. 세미콜론을 제거하면 작동합니다. –

답변

0

줄의 끝에 중괄호 퍼팅에 대한 좋은 인수입니다 수정 된 코드

public boolean isANumber (String s) 
{ 
    for (int i = 0; i < s.length(); i++) 
    { 
     if (!Character.isDigit(s.charAt(i))) 
     { 
     return false; 
     } 
    } 
    return true; 
} 

, 대신에 뒤에 오는 선의 처음.

+0

아, 알겠습니다. 나는 틀린 장소에 세미콜론을 넣었다. 정말 고마워! –

관련 문제