single
NullPointerException
Sveip for å vise menyen
NPE
Forståelse av konseptet med null-verdien for en strengvariabel. Når en strengvariabel opprettes uten å bli initialisert, får den verdien null.
Til sammenligning, hvis en int-variabel ikke initialiseres, får den verdien 0.
Eksempel på en strengvariabel med verdien null:
Main.java
12345678package com.example; public class Main { public static void main(String[] args) { String string = null; System.out.println(string); } }
Som du ser, er utskriften på skjermen null, og koden ser ut til å fungere. Men la oss nå prøve å bruke en metode på en variabel med verdien null:
Main.java
123456789package com.example; public class Main { public static void main(String[] args) { String string = null; string.toLowerCase(); System.out.println(string); } }
Når du prøver å kalle en metode på en strengvariabel med verdien null, får du en NullPointerException.
Måter å unngå NPE på:
- Vær oppmerksom. Hvis du oppretter en strengvariabel, dobbeltsjekk at du har initialisert den;
- Bruk en null-sjekk før du bruker variabelen, for eksempel.
Main.java
123456789101112package 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); } } }
Sveip for å begynne å kode
Du utvikler et system som behandler ansattes e-poster.
Noen e-postoppføringer kan mangle (null).
Din oppgave er å validere og kun behandle ikke-null og korrekt formaterte e-poster.
- Du får et array med ansattes e-poster.
- Gå gjennom hver
emaili arrayet. - For hver oppføring:
- Sjekk om
emailikke ernull - Og sjekk om den inneholder
@-symbolet
- Sjekk om
- Hvis begge betingelsene er oppfylt, skriv ut e-posten til konsollen.
- Ellers, skriv ut:
"Invalid or missing email"
Løsning
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår