ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

004-Java中的运算符

2020-12-26 09:32:16  阅读:155  来源: 互联网

标签:false 结果 ++ 运算符 004 Java byte true


一、运算符



一、分类


在这里插入图片描述

二、算数运算符

  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:字符串拼接:当 + 运算符两边的“任意一边”是字符串类型,那么这个+会进行字符串拼接操作(字符串拼接完之后的结果还是一个字符串);



标签:false,结果,++,运算符,004,Java,byte,true
来源: https://blog.csdn.net/weixin_53538819/article/details/111401792

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有