NumberFormateException en Java

NumberFormateException en Java
Los desarrolladores de Java a menudo necesitan trabajar con múltiples tipos de datos formateados de manera diferente. Por ejemplo, acumulando datos generados o encriptados al azar en el código. En tales situaciones, lidiar con el "NumberFormateException"En Java es asistencia para abstenerse de las limitaciones, simplificando así las funcionalidades del código al final del desarrollador.

Este blog explicará enfrentar y hacer frente al "NumberFormateException"En Java.

¿Qué es "NumberFormateException" en Java??

El "NumberFormateException"Corresponde a una excepción en Java cuando se intenta transformar una cadena que tiene un formato incorrecto en un valor numérico. La conversión se realiza a través del "parseint ()" método. Este método obtiene el tipo de datos primitivos del "Cadena".

Sintaxis

parseint (x, y)

En esta sintaxis:

  • "X"Se refiere a la representación de cadena de decimal.
  • "Y"Transforms"X"En un entero.

Caso ideal

El siguiente ejemplo explica el escenario de caso ideal para transformar la cadena en un entero sin limitaciones:

int x = entero.parseint ("30");
Sistema.afuera.println ("El entero es:"+x);

En el código anterior, aplique los pasos proporcionados a continuación:

  • Primero, especifique el tipo "Entero"En el que se requiere la conversión deseada.
  • Ahora, aplique el "parseint ()Método para analizar la cadena especificada a un entero.
  • Esto le dará al "entero"Representación de la cadena especificada.

Producción

En esta salida, se puede observar que el "entero"La representación de la cadena se recupera en consecuencia.

Razones para la "NumberFormateException" enfrentada en Java

El "NumberFormateException"En Java se puede encontrar por múltiples razones. Pasemos por cada una de las razones una por una.

Caso 1: cadena de entrada vacía

En este caso, la excepción discutida se puede enfrentar debido a un "vacío"La cadena pasó como la"parseint ()"El parámetro del método que debe convertirse en un entero:

int x = entero.parseint ("");
Sistema.afuera.println (x);

Producción

Caso 2: cadena de entrada nula

En este escenario, se puede enfrentar la excepción debido a la especificada "nuloPalabra clave como parámetro de método:

int x = entero.parseint (nulo);
Sistema.afuera.println (x);

Producción

Nota: La declaración de excepción es idéntica en ambos casos anteriores, ya que el valor como parámetro del método se considera "nulo".

Caso 3: cadena de entrada con símbolos adicionales

Incluir símbolos adicionales en la cadena también puede dar lugar a la excepción discutida, como sigue:

Sistema.afuera.println (entero.parseint ("1,23"));

Producción

Caso 4: cadena de entrada no numérica

Una cadena no numérica, yo.mi., "Treinta y cinco"En este caso también puede causar el"NumberFormateException" que se produzca:

int x = entero.parseint ("treinta y cinco");
Sistema.afuera.println (x);

Producción

Caso 5: cadena de entrada que excede el rango

El límite máximo para el "parseint ()"El método es acumular"11" caracteres. El rango que excede este número también puede mostrar el error discutido, como se enfrenta a continuación:

int x = entero.parseint ("123452347684933");
Sistema.afuera.println (x);

Producción

Caso 6: cadena de entrada con datos alfanuméricos

En esta situación, la limitación declarada puede enfrentarse debido a los alfabetos contenidos y los números se transforman simultáneamente en un entero:

int x = entero.parseint ("treinta 1");
Sistema.afuera.println (x);

Producción

Caso 7: Tipo de datos no coincidente

El desajuste en el "devolver"Tipo y el especificado"tipo de datos"También puede dar lugar a encontrar la limitación discutida:

int x = entero.parseint ("30.6 ");
Sistema.afuera.println (x);

Tenga en cuenta que en este caso, el tipo de retorno es "Entero,"Pero el tipo de datos especificado es"flotar", i.mi., 30.6.

Producción

Caso 8: Cadena de entrada con espacios blancos acolchados

Los espacios en blanco acolchado al principio o al final también pueden ser una razón para que se enfrente tal error:

int x = entero.parseint ("30");
Sistema.afuera.println (x);

Producción

Esto se trataba de la limitación de cara en diferentes escenarios. Ahora, discutamos el enfoque para eliminar la limitación discutida.

Cómo manejar "NumberFormateException" en Java?

El discutido "NumberFormateException"La limitación en Java se puede atender utilizando el"trata de atraparlo"Declaración al atrapar la excepción enfrentada en el"atrapar" bloquear:

intentar
int x = entero.parseint ("30");
Sistema.afuera.println (x);

Catch (NumberFormateException e)
Sistema.afuera.println ("Excepción atendida!");

Sistema.afuera.println ("Reanudación de ejecución ...");

En este fragmento de código, aplique los siguientes pasos:

  • Primero, especifique el "intentarBloque/declaración.
  • En este bloque, incluya el tipo de retorno, yo.mi., "Entero"Y aplica el"parseint ()"Método para transformar la cadena especificada en un"entero"Y mostrarlo.
  • Tenga en cuenta que los cuellos de botella enfrentaron al ejecutar el "intentar"Bloque puede enfrentar el"atrapar" bloquear.
  • La probable excepción, yo.mi., "NumberFormateException"Ahora se puede colocar en el"atrapar" bloquear.
  • Dentro de este bloque, muestre el mensaje establecido en lugar de la excepción enfrentada.
  • Fuera de "atraparBloque, visite el mensaje indicado que indica que las funcionalidades se reanudarán independientemente de la excepción encontrada.

Producción

A partir de este resultado, se puede implicar que la excepción se ha enfrentado adecuadamente.

Conclusión

El "NumberFormateException"En Java se enfrenta cuando se intenta transformar una cadena con un formato incorrecto en un entero. Esta excepción puede ser causada por múltiples razones discutidas, yo.mi., Espacios blancos acolchados en la cadena, excedido del límite de cadena, etc., y se puede hacer frente a través del "trata de atraparlo" declaraciones. Este blog discutió los enfoques para enfrentar y hacer frente al "NumberFormateException"En Java.