Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Excepción NullPointer | String
Fundamentos de Java

Desliza para mostrar el menú

book
Excepción NullPointer

NPE

NullPointerException o NPE es un error con el que todo programador de Java está familiarizado. Este error ostenta el récord de ser uno de los más irritantes para los programadores.

Primero, comprendamos el concepto del valor null para una variable de tipo string. Cuando creamos una variable de tipo string pero olvidamos inicializarla, adquiere el valor null. En comparación, si no inicializamos una variable de tipo int, adquiere el valor 0.

Consideremos un ejemplo de una variable de tipo string con valor null:

java

Main

copy
12345678
package com.example; public class Main { public static void main(String[] args) { String string = null; System.out.println(string); } }

Como puedes observar, la salida en pantalla es null, y el código parece funcionar. Pero ahora intentemos utilizar cualquier método con una variable que tenga el valor null:

java

Main

copy
123456789
package com.example; public class Main { public static void main(String[] args) { String string = null; string.toLowerCase(); System.out.println(string); } }

Al intentar llamar a cualquier método en una variable de tipo string con valor null, se recibe una NullPointerException.

Puede parecer que este error no es tan grave, pero más adelante, cuando reciba valores que no fueron escritos por usted personalmente, es probable que lo encuentre con frecuencia. Por lo tanto, es fundamental comprender cómo resolver este error ahora.

Formas de evitar la NPE:

  • Prestar atención. Si crea una variable de tipo string, verifique dos veces si la ha inicializado;

  • Utilizar una verificación de null antes de usar la variable, por ejemplo.

java

Main

copy
123456789101112
package com.example; public class Main { public static void main(String[] args) { String string = null; if (string == null) { // null check System.out.println("Can't use methods with string, because value is null"); } else { System.out.println(string); } } }
Tarea

Swipe to start coding

Se está desarrollando un sistema que procesa correos electrónicos de empleados.
Algunas entradas de correo pueden estar ausentes (null).
La tarea consiste en validar y procesar solo los correos no nulos y correctamente formateados.

  1. Se proporciona un arreglo de correos electrónicos de empleados.
  2. Recorrer cada email en el arreglo.
  3. Para cada entrada:
    • Verificar que el email no sea null
    • Y comprobar que contenga el símbolo @
  4. Si ambas condiciones se cumplen, imprimir el correo electrónico en la consola.
  5. De lo contrario, imprimir:
    "Invalid or missing email"

Solución

java

solution

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 5. Capítulo 5

Pregunte a AI

expand
ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

book
Excepción NullPointer

NPE

NullPointerException o NPE es un error con el que todo programador de Java está familiarizado. Este error ostenta el récord de ser uno de los más irritantes para los programadores.

Primero, comprendamos el concepto del valor null para una variable de tipo string. Cuando creamos una variable de tipo string pero olvidamos inicializarla, adquiere el valor null. En comparación, si no inicializamos una variable de tipo int, adquiere el valor 0.

Consideremos un ejemplo de una variable de tipo string con valor null:

java

Main

copy
12345678
package com.example; public class Main { public static void main(String[] args) { String string = null; System.out.println(string); } }

Como puedes observar, la salida en pantalla es null, y el código parece funcionar. Pero ahora intentemos utilizar cualquier método con una variable que tenga el valor null:

java

Main

copy
123456789
package com.example; public class Main { public static void main(String[] args) { String string = null; string.toLowerCase(); System.out.println(string); } }

Al intentar llamar a cualquier método en una variable de tipo string con valor null, se recibe una NullPointerException.

Puede parecer que este error no es tan grave, pero más adelante, cuando reciba valores que no fueron escritos por usted personalmente, es probable que lo encuentre con frecuencia. Por lo tanto, es fundamental comprender cómo resolver este error ahora.

Formas de evitar la NPE:

  • Prestar atención. Si crea una variable de tipo string, verifique dos veces si la ha inicializado;

  • Utilizar una verificación de null antes de usar la variable, por ejemplo.

java

Main

copy
123456789101112
package com.example; public class Main { public static void main(String[] args) { String string = null; if (string == null) { // null check System.out.println("Can't use methods with string, because value is null"); } else { System.out.println(string); } } }
Tarea

Swipe to start coding

Se está desarrollando un sistema que procesa correos electrónicos de empleados.
Algunas entradas de correo pueden estar ausentes (null).
La tarea consiste en validar y procesar solo los correos no nulos y correctamente formateados.

  1. Se proporciona un arreglo de correos electrónicos de empleados.
  2. Recorrer cada email en el arreglo.
  3. Para cada entrada:
    • Verificar que el email no sea null
    • Y comprobar que contenga el símbolo @
  4. Si ambas condiciones se cumplen, imprimir el correo electrónico en la consola.
  5. De lo contrario, imprimir:
    "Invalid or missing email"

Solución

java

solution

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 5. Capítulo 5
Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
Lamentamos que algo salió mal. ¿Qué pasó?
some-alt