从0学Java之关系运算以及判断

开发 前端
能做判断的基础,是能对数据做比较,比较就是关于两个数据是否相等、谁大谁小的结论,这需要用到关系运算:对两个数据之间的关系的计算。

计算机的智能是建筑在规则的基础上的,在遇到情况的时候,根据事先制定的规则做出判断,是计算机最基本的能力。

这篇文章的内容将讲解以下知识点:

①比较和关系运算,②判断语句

①比较和关系运算

能做判断的基础,是能对数据做比较,比较就是关于两个数据是否相等、谁大谁小的结论,这需要用到关系运算:对两个数据之间的关系的计算。

Java提供了六个关系运算符:

  • ==相等
  • !=不相等
  • >大于
  • >=大于或等于
  • <小于
  • <=小于或等于

注意其中有两个字符的运算符:==、>=和<=的两个字符必须紧紧连在一起,中间不能插入空格。

关系运算的结果是一个逻辑值,逻辑值只有两种可能的值:true(真,表示成立)或false(假,表示不成立)。

当两个值的关系符合关系运算符的预期时,关系运算的结果为true,否则为false。

案例:简易自动售卖机,在售卖机买一瓶快乐肥仔水,投入对应的钱,售卖机出售商品,找零。

//初始化
Scanner in = new Scanner(System.in);
//读入投币金额
System.out.println("请投币:");
int amount = in.nextInt();

//打印购物小票
System.out.println("*****************");
System.out.println("* 可口可乐 *");
System.out.println("* 一罐 *");
System.out.println("* 售价:4元 *");
System.out.println("*****************");

// 计算并打印找零
System.out.println("找零:" + (amount-4));

图片

大家看到按照这个代码去写,投入10块钱,出了一张购物小票,还找了6块钱,感觉这个程序写的还挺合理,但如果是投入3块钱,程序会显示什么呢?

找零:-1,显然这个程序不合理,这个时候就需要修改一下程序了,那就提前让程序做个判断,判断输入的数字是不是大于等于4

//初始化
Scanner in = new Scanner(System.in);
//读入投币金额
System.out.println("请投币:");
int amount = in.nextInt();
System.out.println(amount >= 4);
//打印购物小票
System.out.println("*****************");
System.out.println("* 可口可乐 *");
System.out.println("* 一罐 *");
System.out.println("* 售价:4元 *");
System.out.println("*****************");

// 计算并打印找零
System.out.println("找零:" + (amount-4));

这个时候可以看到,系统判断出 false ,ok,咱们进一步优化这个案例:根据比较的结果,决定做、还是不做某些动作,就要用到if语句。

②判断语句

一个基本的if语句由一个关键字if开头,跟上在括号里的一个表示条件的逻辑表达式,然后是一对大括号“{}”之间的若干条语句。

如果表示条件的逻辑表达式的结果为true,那么就执行后面跟着的这对大括号中的语句,否则就跳过这些语句不执行,而继续下面的其他语句。

有的时候我们希望在条件成立的时候做一件事情,而在条件不成立的时候做另外一件事情。

这可以在if语句后面跟上一个else子句,形成一个if-else语句。

注:写if语句,一定要学会做流程图,要不会乱

//初始化
Scanner in = new Scanner(System.in);
//读入投币金额
System.out.println("请投币:");
int amount = in.nextInt();

if(amount >= 4)
{
//打印购物小票
System.out.println("*****************");
System.out.println("* 可口可乐 *");
System.out.println("* 一罐 *");
System.out.println("* 售价:4元 *");
System.out.println("*****************");

// 计算并打印找零
System.out.println("找零:" + (amount-4));
}
else
{
System.out.println("请继续投币");


责任编辑:武晓燕 来源: Java极客技术
相关推荐

2022-10-31 07:33:05

Javafor循环

2022-09-30 07:32:48

循环while循环体

2022-11-26 00:34:57

数组Java程序

2022-10-30 10:14:43

Java循环语句

2022-09-16 07:32:15

编程计算机命令

2022-10-28 07:38:06

Javawhile循环

2022-09-22 07:31:14

Java变量计算

2019-01-29 14:29:03

微服务路由

2021-01-13 11:51:25

ARM位置无关码

2020-12-11 09:05:04

ARMMDKGNU

2021-01-08 12:06:59

WDT定时装置

2021-05-25 11:50:32

ARMuboot网络协议栈

2021-01-16 11:40:28

ARM嵌入式开发ADC应用

2012-02-23 11:01:37

虚拟化SRM桌面虚拟化

2020-12-10 08:13:15

ARM架构 嵌入式

2021-05-10 11:38:07

Java数组IDEA

2021-06-06 20:56:48

Java内存 intern

2009-08-12 13:35:22

C#关系运算符

2019-03-05 13:37:26

云计算人工智能边缘计算

2016-11-21 15:22:47

GitHub操作开源
点赞
收藏

51CTO技术栈公众号