Java에서 Int Cannot Be Dereferenced 오류 해결

Muhammad Zeeshan 2023년10월12일
  1. Java의 역참조
  2. Java에서 int를 역참조할 수 없음의 원인
  3. Java에서 int를 역참조할 수 없음 오류 해결
Java에서 Int Cannot Be Dereferenced 오류 해결

이 기사에서는 Java int를 역참조할 수 없음 예외의 원인과 해결 방법에 대해 설명합니다. 먼저 Java의 역참조가 무엇인지 살펴보십시오.

Java의 역참조

기본 및 개체 변수는 Java에서 사용할 수 있는 두 가지 유형의 변수입니다. 그러나 객체 변수만 참조 유형이 될 수 있습니다. int 데이터 유형은 객체가 아닌 기본 형식입니다.

참조가 가리키는 값에 액세스하는 것을 역참조라고 합니다. int는 이미 값이고 다른 것에 대한 참조가 아니기 때문에 역참조하는 것은 불가능합니다.

Java에서 int를 역참조할 수 없음의 원인

  1. Java에서 참조는 특정 개체 또는 변수를 가리키는 주소입니다. 역참조라는 용어는 참조를 통해 객체의 속성을 얻는 것을 말합니다.
  2. 아래 예와 같이 프리미티브에 역참조를 수행하려고 하면 Z는 역참조할 수 없습니다. 여기서 Z는 프리미티브로 간주되는 유형입니다.
  3. 그 이유는 프리미티브가 객체와 같은 것이 아니기 때문입니다. 대신 원시 값 표현입니다.

Java에서 int를 역참조할 수 없음 오류 해결

int는 역참조할 수 없습니다를 이해하고 아래 예제를 통해 이를 수정하는 방법을 알아봅시다.

예:

public class Main {
  public static void main(String[] args) {
    int Z = 8;
    System.out.println(Z.equals(8));
  }
}

먼저 Main 클래스를 만들고 임의로 선택한 값과 int를 비교했습니다. Z는 int, byte, short 등을 포함하는 Java의 8가지 기본 데이터 유형 중 하나입니다.

코드를 컴파일하려고 하면 다음 오류가 표시됩니다.

Main.java:5: error: int cannot be dereferenced
System.out.println(Z.equals(8));
                    ^
1 error

우리의 경우 두 값이 같은지 여부를 확인해야 합니다. 우리의 문제를 해결하는 것은 기본 유형에 대해 equals() 함수 대신 == 표기법을 활용하는 것입니다.

public class Main {
  public static void main(String[] args) {
    int Z = 8;
    System.out.println(Z == 8);
  }
}

코드를 컴파일하면 다음 출력이 인쇄됩니다.

true
Muhammad Zeeshan avatar Muhammad Zeeshan avatar

I have been working as a Flutter app developer for a year now. Firebase and SQLite have been crucial in the development of my android apps. I have experience with C#, Windows Form Based C#, C, Java, PHP on WampServer, and HTML/CSS on MYSQL, and I have authored articles on their theory and issue solving. I'm a senior in an undergraduate program for a bachelor's degree in Information Technology.

LinkedIn

관련 문장 - Java Error