Ternær Operator
Sådan forkortes en If-Else-sætning i Java
if-sætningen er ikke altid elegant, men Java tilbyder en hurtigere og mere bekvem måde at kontrollere betingelser på. Dette kaldes ternær operator, og den har følgende syntaks:
condition ? expression_for_true : expression_for_false
Først angives en betingelse, for eksempel 10 > 5, og derefter sættes et spørgsmålstegn ? efter den. Hvis betingelsen evalueres til true, fortsættes til sandt-blokken, for eksempel System.out.println("That's true");. Hvis betingelsen evalueres til false, fortsættes til falsk-blokken, hvor der kan stå noget som System.out.println("That's not true");.
Lad os analysere et mere praktisk eksempel:
Main.java
12345678package com.example; public class Main { public static void main(String[] args) { System.out.println(10 > 5 ? "That's true" : "That's false"); System.out.println(5 > 6 ? "That's true" : "That's false"); } }
Du har måske bemærket, at vi brugte den ternære operator inde i System.out.println();-sætningen. Det er hovedformålet med at bruge den ternære operator – du kan anvende den i output-udtryk for markant at reducere mængden af kode.
Vi kan også bruge den ternære operator ved initialisering eller returnering af værdier. Du vil lære mere om returnering af værdier i næste afsnit, når du studerer metoder.
Eksempel på brug af ternær operator ved initialisering af værdi:
Main.java
12345678910package com.example; public class Main { public static void main(String[] args) { final int a = 10 > 2 ? 5 : 2; final int b = 10 < 2 ? 5 : 2; System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }
Nedenfor ses et eksempel, hvor den ternære operator er erstattet med en almindelig if-sætning for at hjælpe dig med bedre at forstå, hvordan den fungerer:
Main.java
1234567891011121314151617181920package com.example; public class Main { public static void main(String[] args) { int a = 0; int b = 0; if (10 > 2) { a = 5; } else { a = 2; } if (10 < 2) { b = 5; } else { b = 2; } System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }
Resultatet er det samme, men du kan se, hvor meget plads vi sparer ved at bruge ternær operatoren.
Swipe to start coding
-
Skriv en kode, der udskriver
"The string contains Florida", hvis strengen indeholder ordet Florida, eller"Florida is not found", hvis den ikke gør. -
Brug den ternære operator for at øve dig med den.
Løsning
solution.java
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
Awesome!
Completion rate improved to 2.63
Ternær Operator
Stryg for at vise menuen
Sådan forkortes en If-Else-sætning i Java
if-sætningen er ikke altid elegant, men Java tilbyder en hurtigere og mere bekvem måde at kontrollere betingelser på. Dette kaldes ternær operator, og den har følgende syntaks:
condition ? expression_for_true : expression_for_false
Først angives en betingelse, for eksempel 10 > 5, og derefter sættes et spørgsmålstegn ? efter den. Hvis betingelsen evalueres til true, fortsættes til sandt-blokken, for eksempel System.out.println("That's true");. Hvis betingelsen evalueres til false, fortsættes til falsk-blokken, hvor der kan stå noget som System.out.println("That's not true");.
Lad os analysere et mere praktisk eksempel:
Main.java
12345678package com.example; public class Main { public static void main(String[] args) { System.out.println(10 > 5 ? "That's true" : "That's false"); System.out.println(5 > 6 ? "That's true" : "That's false"); } }
Du har måske bemærket, at vi brugte den ternære operator inde i System.out.println();-sætningen. Det er hovedformålet med at bruge den ternære operator – du kan anvende den i output-udtryk for markant at reducere mængden af kode.
Vi kan også bruge den ternære operator ved initialisering eller returnering af værdier. Du vil lære mere om returnering af værdier i næste afsnit, når du studerer metoder.
Eksempel på brug af ternær operator ved initialisering af værdi:
Main.java
12345678910package com.example; public class Main { public static void main(String[] args) { final int a = 10 > 2 ? 5 : 2; final int b = 10 < 2 ? 5 : 2; System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }
Nedenfor ses et eksempel, hvor den ternære operator er erstattet med en almindelig if-sætning for at hjælpe dig med bedre at forstå, hvordan den fungerer:
Main.java
1234567891011121314151617181920package com.example; public class Main { public static void main(String[] args) { int a = 0; int b = 0; if (10 > 2) { a = 5; } else { a = 2; } if (10 < 2) { b = 5; } else { b = 2; } System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }
Resultatet er det samme, men du kan se, hvor meget plads vi sparer ved at bruge ternær operatoren.
Swipe to start coding
-
Skriv en kode, der udskriver
"The string contains Florida", hvis strengen indeholder ordet Florida, eller"Florida is not found", hvis den ikke gør. -
Brug den ternære operator for at øve dig med den.
Løsning
solution.java
Tak for dine kommentarer!
single