29 三元運算符
29.1 解釋
當 if-else 的執行代碼是賦值表達式時,可以用 三元運算符 代替
package com.itheima.chap06;
public class test {
public static void main(String[] args) {
// 商品變量, 表示用户購買的商品總價
double totalPrice = 1000;
// 定義變量, 表示兑換額獎品, 初始為空字符串
String prize = "";
// 判斷價格是否滿200
if (totalPrice >= 200){
prize ="生抽";
} else {
prize ="大蒜頭";
}
System.out.println("送一 " + prize); // 生抽
}
}
------------------------------------------------ 執行後
D:\Software\jdk17\bin\java.exe "-javaagent:D:\Software\JetBrainsIntelliJ IDEA 2025.2.4\lib\idea_rt.jar=9179" -Dfile.encoding=UTF-8 -classpath D:\Software\JavaCode\p1-basic\out\production\p1-basic com.itheima.chap06.test
送一 生抽
Process finished with exit code 0
29.2 示例代碼
// 定義變量, 表示用户購買的商品總價
int totalPrice = 10;
// 判斷價格是否滿200
String prize = totalPrice >= 200 ? "生抽" : "大蒜頭";
29.3 演示1
上面代碼,進行三元運算符優化後
package com.itheima.chap06;
public class test {
public static void main(String[] args) {
// 商品變量, 表示用户購買的商品總價
double totalPrice = 1000;
// 定義變量, 表示兑換額獎品, 初始為空字符串
// 判斷價格是否滿200
String prize = totalPrice >= 200 ? "生抽" : "大蒜頭";
System.out.println("送一 " + prize); // 生抽
}
}
------------------------------------------------ 執行後
D:\Software\jdk17\bin\java.exe "-javaagent:D:\Software\JetBrainsIntelliJ IDEA 2025.2.4\lib\idea_rt.jar=10298" -Dfile.encoding=UTF-8 -classpath D:\Software\JavaCode\p1-basic\out\production\p1-basic com.itheima.chap06.test
送一 生抽
Process finished with exit code 0
29.4 演示2
需求:判斷價格,給出不同優惠(利用三元運算符實現功能)S鼠標放到 chap06 行,新建 New -> Java Class -> 輸入 TernaryOperator(創建包和類)
package com.itheima.chap06;
import java.util.Scanner;
public class TernaryOperator {
public static void main(String[] args) {
// 1.鍵盤錄入獲取價格
Scanner sc = new Scanner(System.in);
System.out.print("請輸入商品總價: ");
double price = sc.nextDouble();
// 2.判斷價格是否滿300
double discount = price >= 300 ? price * 0.8 : price * 0.9 ;
System.out.println("打折後價格: " + discount);
}
}
------------------------------------------------ 第一次執行後
D:\Software\jdk17\bin\java.exe "-javaagent:D:\Software\JetBrainsIntelliJ IDEA 2025.2.4\lib\idea_rt.jar=11435" -Dfile.encoding=UTF-8 -classpath D:\Software\JavaCode\p1-basic\out\production\p1-basic com.itheima.chap06.TernaryOperator
請輸入商品總價: 200
打折後價格: 180.0
Process finished with exit code 0
------------------------------------------------ 第二次執行後
D:\Software\jdk17\bin\java.exe "-javaagent:D:\Software\JetBrainsIntelliJ IDEA 2025.2.4\lib\idea_rt.jar=11478" -Dfile.encoding=UTF-8 -classpath D:\Software\JavaCode\p1-basic\out\production\p1-basic com.itheima.chap06.TernaryOperator
S
Process finished with exit code 0
S
本文章為轉載內容,我們尊重原作者對文章享有的著作權。如有內容錯誤或侵權問題,歡迎原作者聯繫我們進行內容更正或刪除文章。