/*
運算符之六 三元運算符
(條件表達式)? 表達式1 :表達式2
2.說明
條件表達式的結果為boolean類型
根據條件表達式真或假 決定執行表達式1 還是表達式2
如果表達式為true 則執行表達式1
如果表達式為false 則執行表達式2
表達式1 和表達式2要求是一致的
三元運算符可以嵌套使用
運算符之六 三元運算符
(條件表達式)? 表達式1 :表達式2
2.說明
條件表達式的結果為boolean類型
根據條件表達式真或假 決定執行表達式1 還是表達式2
如果表達式為true 則執行表達式1
如果表達式為false 則執行表達式2
表達式1 和表達式2要求是一致的
三元運算符可以嵌套使用
3.凡是可以使用三元運算符的地方 都可以改寫為if-else
反之 不成立
4.如果程序既可以使用三元運算符 又可以使用if-else結構 那么優先選擇三元運算符 原因 簡介 執行效率高
*/
反之 不成立
4.如果程序既可以使用三元運算符 又可以使用if-else結構 那么優先選擇三元運算符 原因 簡介 執行效率高
*/
class SanYuanTest
{
public static void main(String[] args)
{
//獲取兩個整數的較大值
int m=12;
int n=5;
int max=(m>n)?m:n;
System.out.println(max);
double num=(m >n )?2 : 1.0;
{
public static void main(String[] args)
{
//獲取兩個整數的較大值
int m=12;
int n=5;
int max=(m>n)?m:n;
System.out.println(max);
double num=(m >n )?2 : 1.0;
//(m>n)?2:"n大";//編譯錯誤
//********************
n=12;
String maxStr=(m>n)?"m大":((m==n)?"m和n相等":"n大");
System.out.println(maxStr);
//****************************
//獲取三個數的最大值
int n1=12;
int n2=30;
int n3=-43;
int max1=(n1>n2)?n1:n2;
int max2=(max1>n3)?max1:n3;
System.out.println("三個數中的最大值為:"+max2);
//不建議
int max3=(((n1>n2)?n1:n2)>n3)?((n1>n2)?n1:n2):n3;
System.out.println("三個數中的最大值為:"+max3);
//改寫成if-else
if(m>n){
System.out.println(m);
}else{
System.out.println(n);
}
//********************
n=12;
String maxStr=(m>n)?"m大":((m==n)?"m和n相等":"n大");
System.out.println(maxStr);
//****************************
//獲取三個數的最大值
int n1=12;
int n2=30;
int n3=-43;
int max1=(n1>n2)?n1:n2;
int max2=(max1>n3)?max1:n3;
System.out.println("三個數中的最大值為:"+max2);
//不建議
int max3=(((n1>n2)?n1:n2)>n3)?((n1>n2)?n1:n2):n3;
System.out.println("三個數中的最大值為:"+max3);
//改寫成if-else
if(m>n){
System.out.println(m);
}else{
System.out.println(n);
}
}
}
}