三元运算符:
格式:比较表达式?表达式1:表达式2;
比较表达式:结果为一个布尔类型。
执行流程:
根据比较表达式的计算返回一个true或false。
如果是true,就把表达式1作为结果。
如果是false,就把表达式2作为结果。
Demo:
public class OperatorDemo8 {
public static void main(String[] args) {
int x=100;
int y=200;
int z=((x>y)?x:y);
System.out.println("z:"+z);
}
}
以上程序使用三元运算符比较两个数的最大值,并打印最大值。
运行结果为:
z:200
三元运算符练习:
(1)获取两个整数中的最大值
public class OperatorDemo9 {
public static void main(String[] args) {
//获取两个整数中的最大值
int x=100;
int y=200;
int max=(x>y?x:y);
System.out.println("max:"+max);
System.out.println("----------");
}
}
运行结果:
max:200
----------
(2)获取三个整数中的最大值
public class OperatorDemo9 {
public static void main(String[] args) {
//获取三个整数中的最大值
int a=10;
int b=30;
int c=20;
//分两步:
// A:先比较a,b的最大值
// B:拿a,b的最大值再和c进行比较
int temp=(a>b?a:b);
int max1=(temp>c?temp:c);
System.out.println("max1:"+max1);
//一步搞定
int max2=(a>b)?((a>c)?a:c):((b>c)?b:c);
System.out.println("max2:"+max2);
System.out.println("----------");
}
}
运行结果:
max1:30
max2:30
----------
(3)比较两个整数是否相同
public class OperatorDemo9 {
public static void main(String[] args) {
//比较两个整数是否相同
int m=100;
int n=200;
boolean flag=(m==n);
System.out.println(flag);
}
}
运行结果:
false
----------我是分割线----------
键盘录入:
为了让程序的数据更符合开发的数据,我们加入了键盘录入。 目的是让我们写的程序更加灵活。 如何实现键盘数据的录入? A:导包 格式: import java.util.Scanner; 位置: 在class上面。 B:创建键盘录入对象 格式: Scanner sc=new Scanner(System.in); C:通过对象获取数据 格式: int x=sc.nextInt();
看一个Demo:
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) {
//创建键盘录入数据对象
Scanner sc=new Scanner(System.in);
System.out.println("请你输入一个数据:");