Java convierte una cadena hexadecimal en Int
-
Java convierte una cadena hexadecimal corta a
int
usandoInteger.decode()
-
Java convierte una cadena hexadecimal larga a
int
usandoLong.parseLong()
-
Java convierte una cadena hexadecimal muy larga a
in
usandoBigInteger
Este artículo presentará los tres métodos que podemos usar para convertir una cadena de hexadecimal en una int
. Hex o hexadecimal es un sistema de numeración de 16 bases que significa que hay 16 símbolos posibles que representan números. Los valores hexadecimales utilizados para representar los números son 0-9 en el sistema decimal y A-F que representa 10-15 en el sistema decimal.
En los siguientes ejemplos, veremos los pasos para convertir una determinada cadena hexadecimal de diferentes longitudes en una int
en Java.
Java convierte una cadena hexadecimal corta a int
usando Integer.decode()
En el primer ejemplo, estamos usando la función decode()
de la clase Integer
que toma una String
y luego devuelve una int
primitiva.
En Java, una int
puede almacenar el valor mínimo de -231 hasta el valor máximo de 231-1. Si queremos que nuestro resultado sea del tipo int
, no podemos trabajar con cadenas largas. Más ejemplos en este artículo mostrarán cómo podemos convertir valores hexadecimales más largos en un valor numérico.
public class Main {
public static void main(String[] args) {
String hex = "0x2fd";
int convertedValue = Integer.decode(hex);
System.out.print(convertedValue);
}
}
Resultado:
765
Java convierte una cadena hexadecimal larga a int
usando Long.parseLong()
Como discutimos anteriormente, no podemos convertir grandes valores de hexadecimal a int
primitivos porque puede devolver el valor de una capacidad de int
. Es por eso que en este ejemplo estamos usando Long
que tiene una mayor capacidad de -263 a 263-1.
El método parseLong()
de Long
toma dos parámetros, una cadena y un valor base, para analizar la cadena hasta un entero largo primitivo.
public class Main {
public static void main(String[] args) {
String hex = "AA0F245C";
long l = Long.parseLong(hex, 16);
System.out.println(l);
}
}
Resultado:
2853119068
Java convierte una cadena hexadecimal muy larga a in
usando BigInteger
Los valores hexadecimales pueden ser usados para varios propósitos, y uno de ellos es cuando queremos encriptar algo, este valor hexadecimal puede ser muy largo. Si queremos convertir este hexadecimal en un valor numérico por alguna razón, entonces podemos usar BigInteger
, que puede contener números enteros grandes, como su nombre indica.
En el siguiente ejemplo, le pasamos nuestro valor hexadecimal al constructor de BigInteger
con el valor base. También podemos obtener el valor de int
de BigInteger.intValue()
, pero sólo devolverá los 32 bits iniciales.
import java.math.BigInteger;
public class Main {
public static void main(String[] args) {
String hex = "4D21C5BA77D06212F39E16BF2756E9811125F7FC";
BigInteger bigInteger = new BigInteger(hex, 16);
System.out.println(bigInteger);
}
}
Resultado:
440345438517096076415390637616379300179635206140
Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedInArtículo relacionado - Java Int
- Cómo convertir int a char en Java
- Convertir Int a Double en Java
- Convertir Objeto a Int en Java
- Lista de Ints en Java
- Compruebe si Int es nulo en Java
- Convertir Int a Byte en Java