Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Ternär Operator | Djupgående Java-struktur
Java Fördjupning

bookTernär Operator

Hur man förkortar en If-Else-sats i Java

if-satsen är inte alltid särskilt elegant, men Java erbjuder ett snabbare och mer bekvämt sätt att kontrollera villkor. Det kallas ternär operator och har följande syntax:

condition ? expression_for_true : expression_for_false

Först anger vi ett villkor, till exempel 10 > 5, och sedan sätter vi ett frågetecken ? efter det. Om villkoret utvärderas till true går vi till sant-blocket, till exempel System.out.println("That's true");. Om villkoret utvärderas till false går vi till falskt-blocket, där vi kan ha något som System.out.println("That's not true");.

Låt oss analysera ett mer praktiskt exempel:

Main.java

Main.java

copy
12345678
package 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 kanske har lagt märke till att vi använde den ternära operatorn inuti System.out.println();-satsen. Det är huvudsyftet med att använda den ternära operatorn – du kan använda den i utskriftssatser för att avsevärt minska mängden kod.

Vi kan också använda den ternära operatorn vid initiering eller returnering av värden. Du kommer att lära dig mer om att returnera värden i nästa avsnitt när du studerar metoder.

Exempel på användning av den ternära operatorn vid initiering av värde:

Main.java

Main.java

copy
12345678910
package 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); } }

Nedan finns ett exempel på kod där den ternära operatorn är ersatt med en vanlig if-sats för att hjälpa dig att bättre förstå hur den fungerar:

Main.java

Main.java

copy
1234567891011121314151617181920
package 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 är detsamma, men du kan se hur mycket utrymme vi sparar genom att använda ternära operatorn.

Uppgift

Swipe to start coding

  1. Skriv en kod som skriver ut "The string contains Florida" om strängen innehåller ordet Florida, eller "Florida is not found" om den inte gör det.

  2. Använd den ternära operatorn för att öva på den.

Lösning

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 6
single

single

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

close

Awesome!

Completion rate improved to 2.63

bookTernär Operator

Svep för att visa menyn

Hur man förkortar en If-Else-sats i Java

if-satsen är inte alltid särskilt elegant, men Java erbjuder ett snabbare och mer bekvämt sätt att kontrollera villkor. Det kallas ternär operator och har följande syntax:

condition ? expression_for_true : expression_for_false

Först anger vi ett villkor, till exempel 10 > 5, och sedan sätter vi ett frågetecken ? efter det. Om villkoret utvärderas till true går vi till sant-blocket, till exempel System.out.println("That's true");. Om villkoret utvärderas till false går vi till falskt-blocket, där vi kan ha något som System.out.println("That's not true");.

Låt oss analysera ett mer praktiskt exempel:

Main.java

Main.java

copy
12345678
package 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 kanske har lagt märke till att vi använde den ternära operatorn inuti System.out.println();-satsen. Det är huvudsyftet med att använda den ternära operatorn – du kan använda den i utskriftssatser för att avsevärt minska mängden kod.

Vi kan också använda den ternära operatorn vid initiering eller returnering av värden. Du kommer att lära dig mer om att returnera värden i nästa avsnitt när du studerar metoder.

Exempel på användning av den ternära operatorn vid initiering av värde:

Main.java

Main.java

copy
12345678910
package 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); } }

Nedan finns ett exempel på kod där den ternära operatorn är ersatt med en vanlig if-sats för att hjälpa dig att bättre förstå hur den fungerar:

Main.java

Main.java

copy
1234567891011121314151617181920
package 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 är detsamma, men du kan se hur mycket utrymme vi sparar genom att använda ternära operatorn.

Uppgift

Swipe to start coding

  1. Skriv en kod som skriver ut "The string contains Florida" om strängen innehåller ordet Florida, eller "Florida is not found" om den inte gör det.

  2. Använd den ternära operatorn för att öva på den.

Lösning

Switch to desktopByt till skrivbordet för praktisk övningFortsätt där du är med ett av alternativen nedan
Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 1. Kapitel 6
single

single

some-alt