Java学习总结3 Scanner 类来获取用户的键盘输入数据以及运算符的使用

关系运算符

、<、>=、<=、==、!=用于判断两个数据之间的大小关系,计算结果为boolean,如果成立返回为true,否则为false

==和=的区别:

  • k=100;这是赋值运算符,意思是将=右边的计算结果储存在=左边的变量中
  • k==100这是比较计算,意思是判断k是否值为100;如果是则返回true,否则false
    !=意思是判断是否不等于,表示如果相等时返回false,否则返回true
  • 由于浮点数无法精确存放,所以判断k==1.0这个写法是错误的,正确写法: a-b的绝对值小于1e-6
    Java提供了一个工具类Math,其中包含一个abs()的方法实现求绝对值
  • 内部实现是通过StrictMath实现的,其中通过对等类提供计算实现
  • Math.sqrt() : 计算平方根
  • Math.abs() : 取绝对值
  • Math.ceil(): 天花板的意思,就是逢余进一
  • Math.floor() : 地板的意思,就是逢余舍一
  • Math.round(): 四舍五入,float时返回int值,double时返回long值
double kk=-15.6;
System.out.println(Math.ceil(kk));//-15.0
System.out.println(Math.floor(kk));//-16.0
System.out.println(Math.round(kk));//-16

Math.abs(d1-1)<1e-6 判断浮点类型的变量d1的值是否为1
需求:
用户输入身高和提供,计算对应的BMI指数值。BMI指数(英文为Body Mass Index,简称BMI),是用体重千克数除以身高米数的平方得出的数字,是国际上常用的衡量人体胖瘦程度以及是否健康的一个标准

偏瘦:18.5以下、正常:18.5-23.9、超重:≥24、偏胖:24~27.9、肥胖:≥28。

  • 如何接受用户键盘录入
    • 可以通过 Scanner 类来获取用户的键盘输入数据
    • 使用方法:
Scanner s = new Scanner(System.in);  //创建一个Scanner对象,通过这个对象中的方法才能实现接受用户键盘录入数据
//提供的方法有nextXxx()用于接受对应数据类型的用户键盘录入,自动进行数据类型换换,如果转换失败则报异常InputMismatchException
Scanner sc = new Scanner(System.in);
int kk=sc.nextInt();
double dd=sc.nextDouble();

如何编码实现

public class Test2 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入身高,单位为米");
		double height = sc.nextDouble();//代码执行到这里时,会阻塞等待用户输入数据,如果用户输入合法则自动赋值给变量height。直接回车则继续等待用户输入,如果输入数据不合法则报错
		System.out.println("请输入体重,单位为千克");
		double weight = sc.nextDouble();
		double bmi = weight / Math.pow(height, 2);
		if (bmi < 18.5)
			System.out.println("偏瘦");
		else if (bmi < 23.9) //等价于  bmi>=18.5 并且  bmi<23.9
			System.out.println("正常");
		else {
			System.out.println("超重");
			if (bmi < 27.9)
				System.out.println("偏胖");
			else
				System.out.println("肥胖");
		}
	}
}

如何实现接受用户的键盘录入数据

//建立一个变量指向键盘录入
Scanner sc = new Scanner(System.in);
//通过这个变量读取用户键盘录入的数据,如果用户不输入则一直等待,如果输入的数据不是浮点数,则报错
double height=sc.nextDouble();

//变量sc中是Java提供的具体实现方法nextDouble实现从键盘读取一个浮点数,如果要求用户输入int,则方法为nextInt,。。。

如何实现屏幕输出

System.out.println("具体需要输出的内容");输出内容后会自动换行,如果不需要换行,则使用方法System.out.print("")

System.out.println("num:"+num);意思是输出【num:123】
System.out.println("num:num")意思是输出【num:num】

逻辑运算符

并且&&、或者 ||、不是 !。注意:逻辑计算支持短路操作
表达多个条件之间的关系。例如年龄大于等于18并且年龄小于65【age>=18 && age<65】
&&:与运算,含义是两个条件必须同时成立,可以翻译为并且

//年龄大于等于18并且年龄小于65
age>=18 && age<65
//算法规则:同真则真,其余为假

||:或运算,含义是两个条件中成立一个即可,可以翻译为或者

//年龄小于18岁或者年龄不小于65
age<18 || age>=65
//算法规则:同假则假,否则为真

!:非运算,含义是不是,用于对某个条件进行否定

//年龄不小于18
//写法1:
age >=18
//写法2: 
!(age<18//算法规则:非真则假,非假则真

赋值运算符
=,+=,-=,*=,/=,%=

int k=100; 含义是将100赋值存储在k对应的存储单元中
k=k+3可以简写为k+=3 -= */ /=类似,自动类型转换

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值