版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Luojun13Class/article/details/82935054
前言
在判断这方面我们经常用到的有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
谢谢您的阅读!