java基础3基本运算符(Java基础之详解三元运算符)
java基础3基本运算符(Java基础之详解三元运算符)
- 一元运算符:只需要一个数据就可以进行操作的运算符。例如:取反!、自增 、自减--
- 二元运算符:需要两个数据才可以进行操作的运算符。例如:加法 、赋值=
- 三元运算符:需要三个数据才可以进行操作的运算符。
数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B;
public class Demo10Operator {
public static void main(String[] args) {
int a = 10;
int b = 20;
// 数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B;
// 判断a > b是否成立,如果成立将a的值赋值给max;如果不成立将b的值赋值给max。二者选其一
int max = a > b ? a : b; // 最大值的变量
System.out.println("最大值:" max); // 20
// int result = 3 > 4 ? 2.5 : 10; // 错误写法!
System.out.println(a > b ? a : b); // 正确写法!
// a > b ? a : b; // 错误写法!
}
}
首先判断条件是否成立:
- 如果成立为true,那么将表达式A的值赋值给左侧的变量;
- 如果不成立为false,那么将表达式B的值赋值给左侧的变量;
- 二者选其一。
注意事项:
- 必须同时保证表达式A和表达式B都符合左侧数据类型的要求。
- 三元运算符的结果必须被使用。
/*
三元运算符求三个数最大值
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 系统自动判断两个表达式的类型 并进行隐式转换
}
}
觉得文章写得不错,记得点个赞~需要Java全套入门视频的可以后台私信【Java】