欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java核心_运算符

程序员文章站 2022-05-18 16:42:14
...

0.目标

  • 理解运算符的概念和分类
  • 能够熟练使用基本的算术、赋值、关系、逻辑运算符
  • 能够熟练使用三元运算符
    Java核心_运算符
  • 运算符:对常量和变量进行运算操作的符号
  • 程序对数据进行运算时要用运算符
  • 表达式:用运算符把常量和变量连接起来的式子
  • 表达式的类型:表达式的类型为表达式运算结果的数据类型。如:整形表达式:1+2 10*20;布尔型表达式:2>1。

1.算术运算符

用来进行算术运算的符号
分类
Java核心_运算符
注意事项:
/:除法运算符,得到两个数据相除的商。
特点:Java中整数除以整数还是整数。如:3 / 2 = 1。

%:取模(取余)运算符,得到两个数据相除的余数。
特点:可以用来判断两个数是否能够整除。

2.字符和字符串参与加法运算

加法运算的特点

  • 加号两边是数值型数据时,进行加法运算
  • ‘a’、'0’等字符型数据参与运算时,用该字符在计算机中所表示的数值进行运算。
    Java核心_运算符
  • 加号两边有任意一边是字符串时,进行字符串的拼接
public class OperatorDemo {
	public static void main(String[] args) {
		// 
	}
}package org.example.helloworld;

public class OperatorDemo {
    public static void main(String[] args) {
        // 字符的加法运算
        // 定义两个变量,int,char
        int a =10;
        char ch = 'a';
        System.out.println(a + ch);

        // 字符串的加法运算
        System.out.println("hello" + "world");
        System.out.println("hello" + 10);
        System.out.println("hello" + 10 + 20);
        System.out.println(10 + 20 + "hello");
    }
}

结果:

107
helloworld
hello10
hello1020
30hello

3.自增和自减运算符

  • ++:自增1

  • –:自减1

  • 单独使用:放在变量前和放在变量后结果一样

  • 参与运算时:
    在变量前,先自增1(自减1),再进行其他运算
    在变量后,先以原来的值进行其他运算,再自增1(自减1)

package org.example.helloworld;

/**
 * ++:自增1
 * --:自减1
 *
 * 用法:
 *      - 单独使用:放在变量前和放在变量后结果一样
 *      - 参与运算时:
 *          - 在变量前,先自增1(自减1),再进行其他运算
 *          - 在变量后,先以原来的值进行其他运算,再自增1(自减1)
 */
public class OperetorDemo2 {
    public static void main(String[] args) {
        // 定义两个int类型变量
        int a = 5;
        int b = 5;

        // 单独使用
        // 在变量前
        ++ a;

        // 在变量后
        b ++;

        // 参与运算
        System.out.println("a:" + a);
        System.out.println("a:" + (++ a));
        System.out.println("b:" + b);
        System.out.println("b:" + (b ++));
    }
}

结果:

a:6
a:7
b:6
b:6

4.赋值运算符

即用于给变量赋值的运算符
Java核心_运算符
扩展运算符的好处
省略了强制类型转换的操作

用法

int a = 10;
a += 20;  // 相当于a = a + 20;
System.out.println(a);  // 30

好处:

short s = 1;
// s = s + 1;  // 报错
s =+ ;  // 相当于s = (short)(s + 1);
System.out.println("s:" + s);  // s:2

5.关系运算符

  • 定义:关系运算符是用来描述两个变量之间的关系的。
  • 关系运算符的运算结果都是布尔(boolean)类型,要么是true,要么是false。
    Java核心_运算符
    注意:关系运算符==和赋值运算符=的区别

6.逻辑运算符

用于判断“并且”、“或者”、“除非”等逻辑关系。
逻辑运算符两端一般连接值为布尔类型的关系表达式。
常见逻辑运算符:
&&:逻辑与,并且
||:逻辑或,或者
!:逻辑非,表示否定

package org.example.helloworld;

/**
 * 常见逻辑运算符:**
     * &&:逻辑与,并且,要求所有条件都满足
     * ||:逻辑或,或者,要求只要满足一个条件即可
     * !:逻辑非,取反,表示否定,以前若为false,现在为true
 * 注意:
 *      两个逻辑非,结果不变
 */
public class OperatorDemo3 {
    public static void main(String[] args) {
        // 案例:韦小宝找媳妇儿
        // 符号约定:前面的true表示长得好看,false表示长得不好看;后面的true表示身材好,false表示身材不好

        // 刚开始眼光较高,要求既要长得好看,还要身材好
        System.out.println(true && true);
        System.out.println(true && false);
        System.out.println(false && true);
        System.out.println(false && false);
        System.out.println("------------------------------");

        // 韦小宝发现媳妇儿不好找,于是降低了要求,只要长得好看,或者身材好就行
        System.out.println(true || true);
        System.out.println(true || false);
        System.out.println(false || true);
        System.out.println(false || false);
        System.out.println("------------------------------");

        // 韦小宝发现媳这样的妇儿不好找,于是降低了要求,只要不是男的就行
        // true表示女,false表示男
        System.out.println(! true);
        System.out.println(! false);
    }
}

输出结果:

true
false
false
false
------------------------------
true
true
true
false
------------------------------
false
true

7.三元运算符

三元运算符又叫“三目运算符”,即由三部分组成,格式如下:

(关系表达式)?表达式1: 表达式2;

运算流程:
如果关系表达式结果为true,运算后的结果是表达式1
如果关系表达式结果为false,运算后的结果为表达式2

案例
需求:求两个整数的最大值
思路:

  1. 定义两个int类型的变量
  2. 关系表达式中比较两个变量的最大值
  3. 根据结果返回最大值,并打印
package org.example.helloworld;

/**
 * 格式:
 *      (关系表达式)?表达式1: 表达式2;
 *
 * 执行流程:
 *      先判断关系表达式是否成立
 *          成立,则执行表达式1
 *          不成立,则执行表达式2
 */
public class OperatorDemo4 {
    public static void main(String[] args) {
        // 需求:求两个整数的最大值
        // 思路:
        // 1. 定义两个int类型的变量
        int a = 10;
        int b = 20;

        // 2. 关系表达式中比较两个变量的最大值
        int max = (a > b) ? a : b;

        // 3. 根据结果返回最大值,并打印
        System.out.println(max);
    }

输出结果:

20
相关标签: Java 运算符

上一篇: python之运算符

下一篇: 运算符