티스토리 뷰
목차
반응형
초보자들이 흔히 실수하는 한 형태입니다.
아래처럼 파일 길이를 파악하도록 간단한 클래스를 만듭니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | public class Size { long s = 0; int a; public static void main(String[]args){ new Size(); } Size() { try { FileInputStream str = new FileInputStream("E:/Eclipse/Resources/smile.jpg"); while(a != null) { s++; } } catch (IOException e) { e.printStackTrace(); } } } | cs |
위의 자바 소스 코드에서는 오류가 발생합니다.
1 | while (a != null) | cs |
이런 Java 에러 메시지를 확인할 수 있어요.
The operator! = is undefined for the argument type (s) int, null
이런 에러가 발생하는 원인은 무엇일까요?
정답 : java 기본 형태는 null 일 수 없습니다. 0을 확인하고 싶다면 !=0 을 이용해야 합니다.
초보분들은 흔히 null이 곧 0 이라고 생각하시는데요. 꼭 그렇진 않습니다. 경우에 따라 0 또는 null과 비교해야 합니다.
관련 글
자바 64비트 다운로드 링크 - Java 8 Update 211 버전
반응형