Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Exceção NullPointer | String
Fundamentos de Java

bookExceção NullPointer

NPE

NullPointerException ou NPE é um erro com o qual todo programador Java está familiarizado. Esse erro detém o recorde de irritar programadores.

Primeiro, é importante compreender o conceito do valor null para uma variável do tipo string. Quando criamos uma variável string mas esquecemos de inicializá-la, ela recebe o valor null. Em comparação, se não inicializarmos uma variável do tipo int, ela recebe o valor 0.

Considere o exemplo de uma variável string com valor null:

Main.java

Main.java

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

Como pode ser observado, a saída exibida na tela é null, e o código parece estar funcionando. Mas agora, vamos tentar utilizar qualquer método com uma variável que possui o valor null:

Main.java

Main.java

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

Ao tentar chamar qualquer método em uma variável de string com valor null, ocorre uma NullPointerException.

Pode parecer que esse erro não é tão grave, mas, posteriormente, ao receber valores que não foram escritos por você, é comum se deparar com esse problema. Por isso, é fundamental compreender como resolver esse erro desde já.

Formas de evitar NPE:

  • Atenção redobrada. Ao criar uma variável de string, verifique se ela foi inicializada;
  • Utilização de uma verificação de null antes de usar a variável, por exemplo.
Main.java

Main.java

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); } } }
Tarefa

Swipe to start coding

Você está desenvolvendo um sistema que processa e-mails de funcionários.
Algumas entradas de e-mail podem estar ausentes (null).
Sua tarefa é validar e processar apenas os e-mails não nulos e corretamente formatados.

  1. Você recebe um array de e-mails de funcionários.
  2. Percorra cada email no array.
  3. Para cada entrada:
    • Verifique se o email não é null
    • E verifique se ele contém o símbolo @
  4. Se ambas as condições forem atendidas, imprima o e-mail no console.
  5. Caso contrário, imprima:
    "Invalid or missing email"

Solução

solution.java

solution.java

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 5. Capítulo 5
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

Suggested prompts:

Can you show an example of a null check in Java?

What are some common scenarios where NPE occurs?

Are there any tools or best practices to help prevent NPEs?

close

Awesome!

Completion rate improved to 2.7

bookExceção NullPointer

Deslize para mostrar o menu

NPE

NullPointerException ou NPE é um erro com o qual todo programador Java está familiarizado. Esse erro detém o recorde de irritar programadores.

Primeiro, é importante compreender o conceito do valor null para uma variável do tipo string. Quando criamos uma variável string mas esquecemos de inicializá-la, ela recebe o valor null. Em comparação, se não inicializarmos uma variável do tipo int, ela recebe o valor 0.

Considere o exemplo de uma variável string com valor null:

Main.java

Main.java

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

Como pode ser observado, a saída exibida na tela é null, e o código parece estar funcionando. Mas agora, vamos tentar utilizar qualquer método com uma variável que possui o valor null:

Main.java

Main.java

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

Ao tentar chamar qualquer método em uma variável de string com valor null, ocorre uma NullPointerException.

Pode parecer que esse erro não é tão grave, mas, posteriormente, ao receber valores que não foram escritos por você, é comum se deparar com esse problema. Por isso, é fundamental compreender como resolver esse erro desde já.

Formas de evitar NPE:

  • Atenção redobrada. Ao criar uma variável de string, verifique se ela foi inicializada;
  • Utilização de uma verificação de null antes de usar a variável, por exemplo.
Main.java

Main.java

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); } } }
Tarefa

Swipe to start coding

Você está desenvolvendo um sistema que processa e-mails de funcionários.
Algumas entradas de e-mail podem estar ausentes (null).
Sua tarefa é validar e processar apenas os e-mails não nulos e corretamente formatados.

  1. Você recebe um array de e-mails de funcionários.
  2. Percorra cada email no array.
  3. Para cada entrada:
    • Verifique se o email não é null
    • E verifique se ele contém o símbolo @
  4. Se ambas as condições forem atendidas, imprima o e-mail no console.
  5. Caso contrário, imprima:
    "Invalid or missing email"

Solução

solution.java

solution.java

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 5. Capítulo 5
single

single

some-alt