1.三元运算符的格式
/* 三元运算符 (条件表达式)?表达式1:表达式2; 如果条件为true,整个表达式结果是表达式1; 如果条件为false,整个表达式结果是表达式2; 注意:三元运算符不能单独使用,要么赋值,要么当成参数传递给方法 */ public class TenaryDemo{ public static void main(String[] args){ // int i = (1>2)?1:2; // System.out.println(i); // int a = 10; // int b = 10; // // String res = (a > b)?"S1":"S2"; // int max = (a > b)?a:b; // System.out.println(max); int i = 10; int ii = 20; // boolean res = i > ii ? true:false; System.out.println(i > ii ? true:false); } }
2,eg
三元运算符求三个数的最大值
/* 三元运算符求三个数最大值 1.普通做法:先求前两个数中的最大值,然后再求三个数中的最大值 2.三元运算符的嵌套(不利于阅读) 特点: 三元运算符的两个表达式会隐式进行类型转换. */ public class TenaryDemo2{ public static void main(String[] args){ /* int a = 70; int b = 90; int c = 30; //先求前两个数的最大值 // int m1 = (a > b)?a:b; //在求三个数中的最大值 // int res = (m1 > c)?m1:c; //三元运算符的嵌套 int res = (a > b)?(a > c?a:c):(b > c?b:c); System.out.println("三个数中的最大值是: " + res); */ System.out.println(2>1?2:1.0);//2.0,系统自动判断两个表达式的类型,并进行隐式转换 } }