文章目录
- 前言
- 内容
- 总结
- end
前言
在判断这方面我们经常用到的有if / if ... else / if ... else if / switch case
之类的,有一种非常简单的,能将if
原本需要几行代码才能总结出来的内容,只需要一行代码就能书写出来的,这就是今天我要介绍的三目运算符.
内容
先给出一个输入的例子:
//1.引入Scanner类//2.创建Scanner类的对象import java.util.Scanner; public class ScannerDemo {public static void main(String[] args) {Scanner in = new Scanner(System.in); //创建Scanner类的对象 System.out.println("请输入第一个数:"); int a = in.nextInt(); //输入第一个数System.out.println("请输入第二个数:"); int b = in.nextInt(); String s = a > b ? a : b; //"第一个数比较大" :(a < b ? "第二个数比较大":"两个数相等"); System.out.println(s); //输出这两个数中的最大数System.out.println("请输入第三个数"); int c = in.nextInt(); //输入第三个数int s = a > b ? (a > c ? a : c) : (b > c ? b : c); System.out.println("最大数值为:"); System.out.println(s); //输出这三个数种的最大数} }
上面例子中运用了三目运算符,这里图片展示一下三目运算符
其格式为:数据类型 变量名 = 布尔类型表达式?结果1:结果2;
如下图,
因为数据类型可以随意更换,所以该图并没有将数据类型给标注.
上图的运算原理是:
布尔类型表达式结果是true,三元运算符整体结果为结果1,赋值给变量。
布尔类型表达式结果是false,三元运算符整体结果为结果2,赋值给变量。
代码如下:
//使用三目运算符public static void main(String[] args) {int a = 30;int b = 20;int c = a > b ? 100 : 20;System.out.println(c);}//使用if语句public static void main(String[] args) {int a = 30;int b = 20;int max;if (a > b) {max = a;}max = b;System.out.println(max);}
看见代码就知道优势了,这还是只有两个数比较大小,代码就相比较省略了几行,如果用if
判断的话,还需要比较a和b的大小,就会产生代码冗余,显得代码很多,但是真正有效果的代码行还是一样的,所以,三目运算符对判断是很有帮助的.
总结
日常生活中也有很多类是于这样的事情,原本有些事情可以很简单的解决,但是我们却往往使用了复杂的方法,这样不仅仅浪费了自己的时间,而且还给别人一种办事能力低下的错觉!
end
谢谢您的阅读!