004-Java中的运算符


@

一、运算符


一、分类


在这里插入图片描述

二、算数运算符

  1. 加  $+$
  2. 减  $-$
  3. 乘  $*$
  4. 商    /
  5. 取余数    %
  6. 自加1   ++
  7. 自减1  - -

关于 ++ 和 - -(用 ++ 举例,- - 的用法和++一样)

1、位置:

  • 可以出现在变量前和变量后,如:a++ 、++a 都是可以的,不管出现在前后,执行结束后变量都会加一;

2、++ 出现在前后的区别:

  • 当 ++ 在变量前时,先进行自加1的运算,然后再赋值;
  • 当 ++ 在变量后时,先赋值,然后在进行自加1的运算;

三、关系运算符

1.大于     >
2. 大于等于   > =
3. 小于    <
4. 小于等于  < =
5. 等等于   = =
6. 不等于   ! =

注:所有的关系运算符运算结果都是布尔值,不是true就是false,不可能是其他的值

四、逻辑运算符

  1. 逻辑与(并)  &
  2. 逻辑或(且)  |
  3. 逻辑非(取反)  $!$
  4. 短路与    & &
  5. 短路或    ||
  1. & 与 && 的区别
    对于逻辑与 & 来说,只要一边是false,结果就是false,只有两边为true,结果才为true,不管什么情况,左右两边式子都会执行;
    对于短路与 && 来说,只要一边是false,结果就是false,只有两边为true,结果才为true,如果左边式子为false时,出现短路现像,右边式子不执行;
  2. | 与 || 的区别
    对于逻辑或 | 来说,只要一边是true,结果就是true,只有两边为false,结果才为false,不管什么情况,左右两边式子都会执行;
    对于逻辑或 || 来说,只要一边是true,结果就是true,只有两边为false,结果才为false,如果左边式子为true时,出现短路现像,右边式子不执行;

五、赋值运算符

  1. 基本赋值运算符:=
  2. 扩展的赋值运算符:+=、-=、*=、/=、%=

 下面我们用 += 运算符作为代表,了解扩展赋值运算符:

  1. x += 100 和 x = x + 100 真的是完全一样吗?

  重要结论:使用扩展运算符时,永远都不会改变运算结果类型;

  eg:byte x = 100;
     x += 1;

  因为 x += 1实际上会转换为 x = (byte)(x+1)的形式,因此自诞生以来 x 都是byte类型,x变量的类型永远都是byte。不会变,不管后面是多大的数字;

  然而,如果是以下定义,代码是无法通过编译的:

  eg:byte x = 100;
     x = x + 1;

  因为编译器会检测到 x + 1 是 int 类型,然而 int 类型是不能赋给 byte 类型的,因此会报:不兼容的类型: 从int转换到byte可能会有损失错误;

六、条件运算符(三目运算符)

  1. 布尔表达式 ? 表达式1 :表达式2
    原理:布尔表达式的结果为true时,表达式1的执行结果作为整个表达式的结果;
    布尔表达式的结果为false时,表达式2的执行结果作为整个表达式的结果。

七、+运算符

  1. $+$ 运算符在java语言中有两个作用。
    作用1:求和:当 + 运算符两边都是数字类型的时候,求和;
    作用2:字符串拼接:当 + 运算符两边的“任意一边”是字符串类型,那么这个+会进行字符串拼接操作(字符串拼接完之后的结果还是一个字符串);




相关链接:

链接: 003-Java中的变量和数据类型.
链接: 002-Java的标识符和关键字.
链接: 001-Java学习前基础.

posted @ 2021-04-12 16:23  难解的题  阅读(109)  评论(0编辑  收藏  举报