Java学习笔记2.3.3 运算符与表达式 - 关系运算符
Posted howard2005
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java学习笔记2.3.3 运算符与表达式 - 关系运算符相关的知识,希望对你有一定的参考价值。
文章目录
零、本讲学习目标
- 掌握Java的6种关系运算符
- 能用关系表达式表示简单条件
一、关系运算符概念
- 关系运算符用来对两个数值或变量进行比较,其结果是布尔类型的true或false。
二、关系运算符使用
(一)分类说明表
运算符 | 运算 | 范例 | 结果 |
---|---|---|---|
== | 相等于 | 200 == 100 | false |
!= | 不等于 | 200 != 100 | true |
< | 小于 | 200 < 100 | false |
> | 大于 | 200 > 100 | true |
<= | 小于等于 | 200 <= 100 | false |
>= | 大于等于 | 200 >= 100 | true |
(二)注意事项
- “等于”关系运算符是双等号
==
,不是单等号=
,单等号是赋值运算符 - “不等于”关系运算符不能写成数学上的
≠
,而是!=
- “大于或等于”关系运算符不能写成数学上的
≥
,而是>=
- “小于或等于”关系运算符不能写成数学上的
≤
,而是>=
(三)案例演示
任务1、比较两个学生成绩
package net.hw.lesson05;
import java.util.Scanner;
/**
* 功能:比较两个同学成绩高低
* 作者:华卫
* 日期:2020年3月22日
*/
public class Example506
public static void main(String[] args)
/* 声明部分 */
int zhangScore; // 张三的成绩
int liScore; // 李四的成绩
boolean isHigher; // 张三是否比李四成绩高
Scanner sc = new Scanner(System.in); // 接受键盘输入的扫描器对象
/* 输入部分 */
System.out.print("输入张三的成绩:");
zhangScore = sc.nextInt();
System.out.print("输入李四的成绩:");
liScore = sc.nextInt();
/* 处理部分 */
isHigher = zhangScore > liScore;
/* 处理与输出部分 */
System.out.println("张三比李四成绩高吗?" + isHigher);
if (isHigher)
System.out.println("张三要比李四成绩高!");
else
System.out.println("张三不比李四成绩高!");
运行程序,结果如下:
再运行程序,结果如下:
再运行程序,结果如下:
任务2、求解一元二次方程
对于一元二次方程
a
x
2
+
b
x
+
c
=
0
ax^2+bx+c=0
ax2+bx+c=0
假设二次项系数
a
≠
0
a≠0
a=0
判别式
Δ
=
b
2
−
4
a
c
\\Delta=b^2-4ac
Δ=b2−4ac
I f Δ ≥ 0 T h e n x 1 = − b + b 2 − 4 a c 2 a x 2 = − b − b 2 − 4 a c 2 a E l s e x 1 = − b 2 a + 4 a c − b 2 2 a i x 2 = − b 2 a − 4 a c − b 2 2 a i E n d I f If \\quad \\Delta \\geq 0 \\quad Then \\\\ \\quad x_1=\\displaystyle \\frac-b+\\sqrtb^2-4ac2a \\\\ \\quad x_2=\\displaystyle \\frac-b-\\sqrtb^2-4ac2a \\\\ Else \\\\ \\quad x_1=\\displaystyle -\\fracb2a+\\frac\\sqrt4ac-b^22ai \\\\ \\quad x_2=\\displaystyle -\\fracb2a-\\frac\\sqrt4ac-b^22ai \\\\ End \\ If IfΔ≥0Thenx1=2a−b+b2−4acx2=2a−b−b2−4acElsex1=−2ab+2a4ac−b2ix2=−2ab−2a4ac−b2iEnd If
此处,我们没有去计算复数解,只是提示用户此方程没有实数解。
package net.hw.lesson05;
import java.util.Scanner;
/**
* 功能:求解一元二次方程
* 作者:华卫
* 日期:2020年3月22日
*/
public class Example507
public static void main(String[] args)
// 声明部分
double a, b, c, delta, x1, x2;
Scanner sc = new Scanner(System.in);
// 输入部分
System.out.print("a = ");
a = sc.nextDouble();
System.out.print("b = ");
b = sc.nextDouble();
System.out.print("c = ");
c = sc.nextDouble();
// 处理部分 + 输出部分
delta = b * b - 4 * a * c;
if (delta >= 0)
x1 = (-b + Math.sqrt(delta)) / (2 * a);
x2 = (-b - Math.sqrt(delta)) / (2 * a);
System.out.println("x1 = " + x1);
System.out.println("x2 = " + x2);
else
System.out.println("此方程没有实数解!");
运行程序,结果如下:
再运行程序,结果如下:
再运行程序,结果如下:
利用关系表达式可以表示一个简单条件,比如查找班上的男生,条件就是:性别 == “男”;查找成绩在90分以上的,条件就是:成绩 >= 90。
但是,大家思考一个问题,如何要查找成绩在90分以上的男生,那么该如何将查询条件写成Java表达式呢?
这就会用到Java的逻辑运算:非、与、或。
以上是关于Java学习笔记2.3.3 运算符与表达式 - 关系运算符的主要内容,如果未能解决你的问题,请参考以下文章