java(键盘录入三个数据比较大小)
博主是个入门级的小白,以下代码和意见仅属于个人看法。
话不多说上代码!
步骤一
键盘录入操作的步骤:
import java.util.Scanner //(ps.这一步其实我现在还没理解到精髓,只是知道这行代码是导包)
java.util
类 Scanner
java.lang.Object
继承者 java.util.Scanner
所有已实现的接口:
Iterator<String>
一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。
例如,以下代码使用户能够从System.in 中提取一个数:
Scanner sc = new Scnanner(System.in);
int i = sc.nextInt();
步骤二
三个数据比较大小我们所要用的是(三元运算)ps(水平有限,现在就知道这一种方法)
三元运算(也可称为三目运算):
格式:
(表达式)? 表达式1的结果 : 表达式2结果 ;
计算/比较表达式是否成立,如果为true,就执行表达式1的结果,否则就执行表达式2的结果
例如:比较两个数的最大值
int x = 10;
int y = 20;
(x > y)? x : y;(ps:如果x>y 则输出的结果为x,反之输出的结果为y)
比较三个数的最大值
int a = 15;
int b = 13;
int c = 18;
方法一: int max = (a>b) ?((a>c )?a: c) : ((b>c)? b: c) ;
直接通过三元运算来先比较a和b的大小,如果a>b,则执行第二个三目运算比较出a和c的大小,如果b>a,则执行后面的
三元运算比较b和c的大小
方法二: int temp = (x > y)? x : y;
int max1 = (temp > z)? temp : z;
这个方法,需要先定义一个中间变量,想定义啥就定义啥(,前提是符合变量的标准和符合你需要比较变量的数据类型)
先比较(x和y的大小)然后把最大值赋值给中间变量temp
然后在通过中间变量temp和z比较,从而求出a,b,c之间的最大值
(ps:个人推荐使用方法2,看上去比较清晰明了,可以使初学者有比较好的,学习体验!)
步骤三
将步骤一和步骤二结合起来
import java.util.Scanner; //导包 在Java中,只要不是java.lang包下的类,都需要导包!
class Demo{
public static void main(String[] args){
Scanner sc = new Scanner(System.in); //创建键盘录入对象
System.out.println("请输入的一个数据");
int a = sc.nextInt(); //录入第一个数据a
System.out.printn(" ------------------------------------");
System.out.println("请输入的二个数据");
int b = sc.nextInt(); //录入第二个数据b
System.out.printn(" ------------------------------------");
System.out.println("请输入的三个数据");
int c = sc.nextInt(); //录入第三个数据c
System.out.printn(" ------------------------------------");
int temp = (a > b)? a : b;
int max2 = (temp > c)? temp : c;
System.out.println("输入的三个数据中的最大值为:"+max2);
}
}
ps:本次程序的结果随机录入的数据为 8 5 12