• 运算符【Java基础】


    @[TOC](运算符)

    运算符概述

    一种特殊的符号,有以下功能

    • 数据的运算
    • 数据的比较
    • 数据的赋值

    算术运算符

    • +(正号、加号、字符串拼接)
    • -(负号、减号)
    • *(乘)
    • /(取模)
    • ++(自增)
    • –(自减)
    • %(取余)

    关系运算符

    • ==(相等)
    • !=(不相等)
    • <(小于)
    • <= (小于等于)
    • >=
    • instanceof(检查是否是类的对象) “dhx instanceof String” ---->true

    逻辑运算

    逻辑运算规则

    1. a&b : & 叫逻辑与:规则:当 a 和 b 同时为 true ,则结果为 true, 否则为 false

    2. a&&b : && 叫短路与:规则:当 a 和 b 同时为 true ,则结果为 true,否则为 false

    3. a|b : | 叫逻辑或,规则:当 a 和 b ,有一个为 true ,则结果为 true,否则为 false

    4. a||b : || 叫短路或,规则:当 a 和 b ,有一个为 true ,则结果为 true,否则为 false

    5. !a : 叫取反,或者非运算。当 a 为 true, 则结果为 false, 当 a 为 false 是,结果为 true

    6. a^b: 叫逻辑异或,当 a 和 b 不同时,则结果为 true, 否则为 fa

    && 和 & 使用区别

      1. &&短路与:如果第一个条件为 false,则第二个条件不会判断,最终结果为 false,效率高
      1. & 逻辑与:不管第一个条件是否为 false,第二个条件都要判断,效率低

    || 和 | 基本规则

    • 短路或|| 条件 1||条件 2 两个条件中只要有一个成立,结果为 true,否则为 false
    • |逻辑或 条件 1|条件 2 只要有一个条件成立,结果为 true,否则为 false

    !取反规则

    ! 非(取反) !条件 如果条件本身成立,结果为 false,否则为 true

    赋值运算符

    基本赋值运算符

    • =

    复合赋值运算符

    • +=
    • -=
    • *=
    • /=
    • %=

    赋值运算符特点

    1. 运算顺序从右往左 int num = a + b + c;
    2. 赋值运算符的左边 只能是变量,右边 可以是变量、表达式、常量值 int num = 20; int num2= 78 * 34 - 10; int num3 = a;
    3. 复合赋值运算符等价于下面的效果 比如:a+=3;等价于 a=a+3; 其他类推
    4. 复合赋值运算符会进行类型转换。 byte b

    三元运算符

    基本语法

    条件表达式 ? 表达式 1: 表达式 2;

    运算规则:

    1. 如果条件表达式为 true,运算后的结果是表达式 1;
    2. 如果条件表达式为 false,运算后的结果是表达式 2 ;

    ps:

    1. 表达式 1 和表达式

    2. 要为可以赋给接收变量的类型(或可以自动转换) 2) 三元运算符可以转成 if–else 语句

    运算符优先级

    1. 运算符有不同的优先级,所谓优先级就是表达式运算中的运算顺序。如右表,上一行运算符总优先于下一行。

    2. 只有单目运算符、赋值运算符是从右向左运算的

    标识符的命名规则和规范

    什么是标识符?

    • 用户给 变量、方法和类等命名使用的字符序列
    • 凡是可以自己请名字的地方都是标识符(用户标识符)

    标识符的命名规则

    • 由26个英文字母大小写 0-9 _或$组成
    • 数字不能开头
    • 不可以单纯使用关键字和保留字
    • java中严格区分大小写、长度无限制
    • 标识符不能包含空格

    关键字

    什么是关键字?

    被赋予特别意义的字符串(均为小写)

    such as:

    class int long void char

    保留字

    Java 保留字:现有 Java 版本尚未使用,但以后版本可能会作为关键字使用。自己命名标识符时要避免使用这些保留 字 byValue、cast、future、 generic、 inner、 operator、 outer、 rest、 var 、 goto 、const

    键盘输入语句

    Scanner

    如何使用?

    1. 导入该类的所在包, java.util.*

    2. 创建该类对象(声明变量)

    3. 调用里面的功能

    进制

    对于整数,有四种表示方式:

    二进制:0,1 ,满 2 进 1.以 0b 或 0B 开头。

    十进制:0-9 ,满 10 进 1。

    八进制:0-7 ,满 8 进 1. 以数字 0 开头表示。

    十六进制:0-9 及 A(10)-F(15),满 16 进 1. 以 0x 或 0X 开头表示。此处的 A-F 不区分大

    进制转换

     第一组: 1) 二进制转十进制 2) 八进制转十进制 3) 十六进制转十进制

     第二组: 1) 十进制转二进制 2) 十进制转八进制 3) 十进制转十六进制

     第三组 1) 二进制转八进制 2) 二进制转十六进制

     第四组 1) 八进制转二进制 2) 十六进制转二进制

    位运算

    java 中有 7 个位运算(&、|、 ^ 、~、>>、<<和 >>>

    • 按位与& : 两位全为1,结果为1,否则为0
    • 按位或| : 两位有一个为1,结果为1,否则为0
    • 按位异或^ :两位一个为0,一个为1,结果为1,否则为0
    • 按位取反~:0 -> 1,1 -> 0
    • 算术右移 >>:低位溢出,符号位不变,并用符号位补溢出的高位
    • 算术左移 <<: 符号位不变,低位补 0
    • (>>>)逻辑右移也叫无符号右移,运算规则是: 低位溢出,高位补
  • 相关阅读:
    Linux shell之重定向
    基于matlab城市空中交通场景中的激光雷达与雷达融合仿真(附源码)
    Linux 软件安装目录
    Visual Studio 2019 导出DLL库
    基于工业5G网关的工业机器人监测控制方案
    Netty入门——组件(EventLoop)
    应用商店备案登记流程解析
    netcat 命令介绍及使用示例
    基于springboot地方废物回收机构管理系统springboot11
    mysql9
  • 原文地址:https://blog.csdn.net/qq_61905492/article/details/133826166