Ternær Operator
Hvordan kan vi forkorte en if-else-setning?
if
-setningen ser ikke alltid elegant ut, men Java tilbyr en raskere og mer praktisk måte å sjekke betingelser på. Dette kalles ternær operator, og har følgende syntaks:
condition ? expression_for_true : expression_for_false
Først setter vi en betingelse, for eksempel 10 > 5
, og deretter setter vi et spørsmålstegn ?
etter den. Hvis betingelsen evalueres til true
, går vi til sann-blokken, for eksempel System.out.println("That's true");
. Hvis betingelsen evalueres til false
, går vi til usann-blokken, hvor vi kan ha noe som System.out.println("That's not true");
.
La oss analysere et mer 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 kanskje lagt merke til at vi brukte den ternære operatoren inne i System.out.println();
-setningen. Dette er hovedformålet med å bruke den ternære operatoren – du kan bruke den i utskriftssetninger for å redusere mengden kode betydelig.
Vi kan også bruke den ternære operatoren når vi initialiserer eller returnerer verdier. Du vil lære mer om å returnere verdier i neste seksjon når du skal studere metoder.
Eksempel på bruk av ternær operator ved initialisering av verdi:
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 er et eksempel på kode der den ternære operatoren er erstattet med en vanlig if
-setning for å hjelpe deg å 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 mye plass vi sparer ved å bruke ternær operator.
Swipe to start coding
-
Skriv en kode som skriver ut
"The string contains Florida"
hvis strengen inneholder ordet Florida, eller"Florida is not found"
hvis den ikke gjør det. -
Bruk den ternære operatoren for å øve på denne.
Løsning
solution.java
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
Can you show me an example of using the ternary operator in Java?
What are some common mistakes to avoid when using the ternary operator?
Can the ternary operator be nested or used with multiple conditions?
Awesome!
Completion rate improved to 2.63
Ternær Operator
Sveip for å vise menyen
Hvordan kan vi forkorte en if-else-setning?
if
-setningen ser ikke alltid elegant ut, men Java tilbyr en raskere og mer praktisk måte å sjekke betingelser på. Dette kalles ternær operator, og har følgende syntaks:
condition ? expression_for_true : expression_for_false
Først setter vi en betingelse, for eksempel 10 > 5
, og deretter setter vi et spørsmålstegn ?
etter den. Hvis betingelsen evalueres til true
, går vi til sann-blokken, for eksempel System.out.println("That's true");
. Hvis betingelsen evalueres til false
, går vi til usann-blokken, hvor vi kan ha noe som System.out.println("That's not true");
.
La oss analysere et mer 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 kanskje lagt merke til at vi brukte den ternære operatoren inne i System.out.println();
-setningen. Dette er hovedformålet med å bruke den ternære operatoren – du kan bruke den i utskriftssetninger for å redusere mengden kode betydelig.
Vi kan også bruke den ternære operatoren når vi initialiserer eller returnerer verdier. Du vil lære mer om å returnere verdier i neste seksjon når du skal studere metoder.
Eksempel på bruk av ternær operator ved initialisering av verdi:
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 er et eksempel på kode der den ternære operatoren er erstattet med en vanlig if
-setning for å hjelpe deg å 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 mye plass vi sparer ved å bruke ternær operator.
Swipe to start coding
-
Skriv en kode som skriver ut
"The string contains Florida"
hvis strengen inneholder ordet Florida, eller"Florida is not found"
hvis den ikke gjør det. -
Bruk den ternære operatoren for å øve på denne.
Løsning
solution.java
Takk for tilbakemeldingene dine!
Awesome!
Completion rate improved to 2.63single