inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

업캐스팅 (부모 형태, 자식 생성자)

오랜만에 질문 남깁니다.

해결된 질문

86

김가현

작성한 질문수 19

0

이번 질문은 단지 제 개인적인 궁금증인데,

만약 0==NULL 이렇게 비교를 하게되면 참이 되나요? equals 0==NULL이면 참인가요?

python java c 정보처리기사

답변 2

0

주말코딩

안녕하세요,

 

주석과 함께 출력값 알려드립니다.

public class NullZeroComparison {
    public static void main(String[] args) {
        
        // 1. 기본형(primitive) int
        int a = 0;
        
        // 2. 참조형(wrapper) Integer
        Integer b = null;
        Integer c = 0;
        Integer d = null;

        // ── == 비교 ──────────────────────────────

        System.out.println(a == 0);       // true  (기본형 숫자 비교)
        System.out.println(c == 0);       // true  (Integer → int 언박싱 후 비교)
        System.out.println(b == null);    // true  (참조가 null인지 확인)
        System.out.println(d == null);    // true
        System.out.println(b == c);       // false (null ≠ 0 참조)

        // ── equals() 비교 ────────────────────────

        System.out.println(c.equals(0));      // true
        System.out.println(c.equals(null));   // false (null은 어떤 값과도 같지 않음)

        // ── 💥 NullPointerException 위험 ─────────

        // b.equals(0);   // NPE! null 객체에서 메서드 호출 불가
        // int x = b;     // NPE! null을 언박싱하면 터짐
        // if (b == 0)    // NPE! b가 null이면 언박싱 시도 → 터짐
    }
}

 

출력값:

true

true

true

true

false

true

false

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. 김가현님.

질문해 주신 “0==NULL” 비교는 언어에 따라 다르게 처리될 수 있습니다. 우선, C/C++을 예로 들어서 설명해드리겠습니다:

  1. C/C++ 언어에서:

    • NULL은 보통 포인터의 빈 값을 나타내는 매크로 상수로 정의되어 있으며, 특정 주소를 가리키지 않음을 의미합니다.
    • 0은 정수형 상수로, NULL과 비교하면 같은 뜻을 가지지 않습니다.
    • 따라서 0==NULL 비교는 일반적으로 참이 되지 않습니다.
  2. Java나 Python에서는:

    • Java에서는 NULL 대신 null을 사용하지만, 이는 객체 참조를 가리키지 않음을 의미하며 일종의 객체 타입에 속합니다.
    • Python에서는 None이 이에 해당하며, 이는 일반적인 수치형 타입과 비교할 수 없습니다.

질문하신 내용과 유사한 주제는 다음의 질의응답을 참고하실 수 있습니다:
- 자바 래퍼 클래스 관련 질문. 이 게시물에서는 연산자 비교와 관련된 유용한 정보를 다루고 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

공부 순서

0

9

1

재귀함수 연산법

0

24

2

26년 1회차 기출 강의

0

60

2

기출문제

0

57

1

C언어에서

0

61

1

포인터 질문

0

57

2

실기 공부 시작 하려고 하는데요

0

101

2

필기자료 사라졌나요?(실기 일주일만에 안돼서 재도전-_-)

0

94

2

26년 1회 실기 해설 강의

0

114

2

53번 4-1 자료 오류 있는 것 같습니다.

0

106

2

7번문제

0

88

2

C언어 변형문제 9번문제 Pdf 수정요청

0

78

2

메서드 오버드라드

0

70

2

실수

0

63

1

공부 우선순위 우선강의 알려주세요

0

135

1

생성자 호출순서 강의 10번 문제 30분대 질문입니다

0

70

2

25년 2회 기출 5:40 질문입니다.

0

53

2

모의고사1회 3번 파이썬문제

0

85

2

C언어 출제변형 6번 문제

0

55

2

c언어 출제변형 강의 질문

0

42

2

28:40

0

45

2

C :  언어 배열과  문자열 수업자료

0

40

2

파이썬 리스트, 딕셔너리 질문

0

57

2

모의고사 관련 질문 건

1

79

3