Nullpointerexception
NPE
Lad os forstå begrebet null-værdien for en strengvariabel. Når vi opretter en strengvariabel, men glemmer at initialisere den, får den værdien null.
Til sammenligning, hvis vi ikke initialiserer en int-variabel, får den værdien 0.
Lad os se et eksempel på en strengvariabel med værdien null:
Main.java
12345678package com.example; public class Main { public static void main(String[] args) { String string = null; System.out.println(string); } }
Som du kan se, er outputtet på skærmen null, og koden ser ud til at fungere. Men lad os nu prøve at bruge en hvilken som helst metode med en variabel med værdien null:
Main.java
123456789package com.example; public class Main { public static void main(String[] args) { String string = null; string.toLowerCase(); System.out.println(string); } }
Ved forsøg på at kalde en metode på en strengvariabel med værdien null, opstår der en NullPointerException.
Måder at undgå NPE på:
- Vær opmærksom. Hvis du opretter en strengvariabel, dobbelttjek om den er initialiseret;
- Brug et null-tjek før variablen anvendes, 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); } } }
Swipe to start coding
Du udvikler et system, der behandler medarbejderes e-mails.
Nogle e-mail-poster kan mangle (null).
Din opgave er at validere og kun behandle ikke-null og korrekt formaterede e-mails.
- Du får et array med medarbejderes e-mails.
- Gennemløb hver
emaili arrayet. - For hver post:
- Kontroller, at
emailikke ernull - Og kontroller, at den indeholder
@-symbolet
- Kontroller, at
- Hvis begge betingelser er opfyldt, udskriv e-mailen til konsollen.
- Ellers udskrives:
"Invalid or missing email"
Løsning
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Fantastisk!
Completion rate forbedret til 2.7
Nullpointerexception
Stryg for at vise menuen
NPE
Lad os forstå begrebet null-værdien for en strengvariabel. Når vi opretter en strengvariabel, men glemmer at initialisere den, får den værdien null.
Til sammenligning, hvis vi ikke initialiserer en int-variabel, får den værdien 0.
Lad os se et eksempel på en strengvariabel med værdien null:
Main.java
12345678package com.example; public class Main { public static void main(String[] args) { String string = null; System.out.println(string); } }
Som du kan se, er outputtet på skærmen null, og koden ser ud til at fungere. Men lad os nu prøve at bruge en hvilken som helst metode med en variabel med værdien null:
Main.java
123456789package com.example; public class Main { public static void main(String[] args) { String string = null; string.toLowerCase(); System.out.println(string); } }
Ved forsøg på at kalde en metode på en strengvariabel med værdien null, opstår der en NullPointerException.
Måder at undgå NPE på:
- Vær opmærksom. Hvis du opretter en strengvariabel, dobbelttjek om den er initialiseret;
- Brug et null-tjek før variablen anvendes, 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); } } }
Swipe to start coding
Du udvikler et system, der behandler medarbejderes e-mails.
Nogle e-mail-poster kan mangle (null).
Din opgave er at validere og kun behandle ikke-null og korrekt formaterede e-mails.
- Du får et array med medarbejderes e-mails.
- Gennemløb hver
emaili arrayet. - For hver post:
- Kontroller, at
emailikke ernull - Og kontroller, at den indeholder
@-symbolet
- Kontroller, at
- Hvis begge betingelser er opfyldt, udskriv e-mailen til konsollen.
- Ellers udskrives:
"Invalid or missing email"
Løsning
Tak for dine kommentarer!
single