Java学习笔记2.3.3 运算符与表达式 - 关系运算符

举报
howard2005 发表于 2022/03/03 23:22:43 2022/03/03
【摘要】 文章目录 零、本讲学习目标一、关系运算符概念二、关系运算符使用(一)分类说明表(二)注意事项(三)案例演示任务1、比较两个学生成绩任务2、求解一元二次方程 零、本讲学习目标 掌握...

零、本讲学习目标

  1. 掌握Java的6种关系运算符
  2. 能用关系表达式表示简单条件

一、关系运算符概念

  • 关系运算符用来对两个数值或变量进行比较,其结果是布尔类型的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 Δ=b24ac

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+\sqrt{b^2-4ac}}{2a} \\ \quad x_2=\displaystyle \frac{-b-\sqrt{b^2-4ac}}{2a} \\ Else \\ \quad x_1=\displaystyle -\frac{b}{2a}+\frac{\sqrt{4ac-b^2}}{2a}i \\ \quad x_2=\displaystyle -\frac{b}{2a}-\frac{\sqrt{4ac-b^2}}{2a}i \\ End \ If IfΔ0Thenx1=2ab+b24ac x2=2abb24ac Elsex1=2ab+2a4acb2 ix2=2ab2a4acb2 iEnd 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的逻辑运算:非、与、或。

文章来源: howard2005.blog.csdn.net,作者:howard2005,版权归原作者所有,如需转载,请联系作者。

原文链接:howard2005.blog.csdn.net/article/details/123248460

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。