Resuelva el error Int Cannot Be Dereferenced en Java
- Desreferenciación en Java
-
Causa de
int no se puede desreferenciar
en Java -
Resolver el error
int no puede ser desreferenciado
en Java
En este artículo, discutiremos la causa de la excepción de Java int can be dereferenced
y cómo solucionarlo. Primero, eche un vistazo a lo que es la desreferenciación en Java.
Desreferenciación en Java
Las variables primitivas y de objeto son los dos tipos de variables que se pueden usar en Java. Sin embargo, solo las variables de objeto pueden ser tipos de referencia. El tipo de datos int es una primitiva en lugar de un objeto.
Acceder al valor al que apunta una referencia es lo que se conoce como desreferenciación. Es imposible desreferenciar a int porque ya es un valor y no es una referencia a nada más.
Causa de int no se puede desreferenciar
en Java
- Una referencia en Java es una dirección que apunta a un objeto o variable específica. El término desreferenciación se refiere a obtener las propiedades de un objeto a través de una referencia.
- Si intenta realizar cualquier desreferenciación en una primitiva, como en el ejemplo siguiente, recibirá el error
Z
no se puede desreferenciar, dondeZ
es un tipo considerado primitivo. - La causa de esto es que las primitivas no son lo mismo que los objetos; en cambio, son representaciones de valor bruto.
Resolver el error int no puede ser desreferenciado
en Java
Entendamos que int no se puede desreferenciar
y descubramos cómo solucionarlo con la ayuda del siguiente ejemplo:
Ejemplo:
public class Main {
public static void main(String[] args) {
int Z = 8;
System.out.println(Z.equals(8));
}
}
En primer lugar, creamos la clase Main
y comparamos un int con un valor elegido al azar. Z
es uno de los ocho tipos de datos fundamentales de Java, incluidos int, byte, short, etc.
Veremos el siguiente error cuando intentemos compilar el código:
Main.java:5: error: int cannot be dereferenced
System.out.println(Z.equals(8));
^
1 error
En nuestro caso, necesitamos determinar si los dos valores son iguales o no. Resolver nuestro problema es utilizar la notación ==
en lugar de la función equals()
para tipos primitivos:
public class Main {
public static void main(String[] args) {
int Z = 8;
System.out.println(Z == 8);
}
}
El siguiente resultado se imprimirá cuando compilemos el código:
true
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.
LinkedInArtículo relacionado - Java Error
- Arreglar Java fue iniciado por el código de salida devuelto = 1
- Arreglar JAVA_HOME no se puede determinar a partir del error de registro en R
- Arreglar java.io.IOException: No queda espacio en el dispositivo en Java
- Arreglar Java.IO.NotSerializableException en Java
- Arreglar Java.Lang.IllegalStateException de Android: no se pudo ejecutar el método de la actividad
- Arreglar Java.Lang.NoClassDefFoundError: No se pudo inicializar el error de clase