조건부 명령문을 실행할 조건을 설정 한 다음 두 줄의 코드가 있습니다. 그러나 조건이 충족되지 않아도 조건 내 프로그램이 실행되기 때문에 논리에 문제가 있습니다. 입력 문자열의 경우 : -이 코드와 I의 두 번째 줄에 "(* 및/+) 내 테스트 케이스에 입력 어떤 연산자"Java : 조건문의 논리가 작동하지 않아 조건이 충족되지 않아도 프로그램을 실행할 수 있습니다.
if (!(token.equals('+')) && !(token.equals('-')) && !(token.equals('*')) && !(token.equals('/'))) {
operandStack.push(Integer.valueOf(token));
}
은 내가 java.lang.NumberFormatException의 무엇입니까 그것이 Integer.valueOf()가 심볼에 대해 작동하지 않기 때문이라는 것을 알았지 만 그것은 그 것이다. 심볼이라면 처음부터 실행해서는 안됩니다. 모든 종류의 오타 나 바보 같은 구문 오류를 찾으려고 노력했지만 아무 것도 발견하지 못했습니다. 이 논리에 어떤 문제가 있습니까?
토큰이란 무엇입니까? 나는 그것이 '문자열'이라는 직감을 가지고있다. – azurefrog
'token'은 문자열입니까? 그것을'char' 값과 비교하고 있습니다. – Blorgbeard
작은 따옴표를 큰 따옴표로 바꾸십시오. – vikarjramun