ICode9

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

javaSE-运算符

2021-11-22 18:01:20  阅读:177  来源: 互联网

标签:1111 反码 补码 运算符 0000 javaSE 原码


目录

原码,反码,补码

一.算数运算符

1.种类​

2.i++和i–的区别

3.优先级

4.注意

二.关系运算符

1.分类

​2.注意

三.位运算符

1.分类

2.>>和>>>详解

四.赋值运算符

五.字符串连接符

六.三目运算符

七.优先级


原码,反码,补码

原码:二进制表示法,最高位是符号位,"0"表示正,"1"表示负,其余是数值位

反码:正数的反码与原码相同,负数的反码就是对其原码逐一取反,符号位除外

补码:正数的补码与原码相同,负数的补码是在反码的末尾加1

注意:我们读取的十进制是根据原码来读取,而在内存中,数值都是以二进制补码形式保存的。

一.算数运算符

1.种类

2.i++和i–的区别

i++:先赋值后加1

++i:先加1后赋值

只要记住程序是从左往右运行的就行

3.优先级

优先级:单目>双目>三目

单目:只有一个操作数,比如++和–

双目:1+2

4.注意

0.1+0.2不等于0.3

所以千万不要使用小数进行比较

二.关系运算符

1.分类


2.注意

==比较的是基本类型的大小,而引用类型是比较地址

==是比较,=是赋值

三.位运算符

1.分类

2.>>和>>>详解

>>和<<

符号位不变

8>>2
    0000 1000
    运算后: 0000 0010
    结果:2
面试经常问的就是如何计算2的3次方
    result = 2<<2;
    因为是直接操作内存中的2进制数,所以会比较快
8<<2
    运算后:0010 0000
-1<<2
    -1的原码:1000 0001
        反码:1111 1110
        补码:1111 1111(内存中保存的就是补码)
    <<运算后:1111 1100
        反码:1111 1011
        原码:1000 0100
        结果:-4
-1>>2
    -1的原码:1000 0001
        反码:1111 1110
        补码:1111 1111(内存中保存的就是补码)
    >>运算后:1111 1111
        结果没有变


规律:

符号位不变,移动其他位

>>>

符号位变

8>>>2
    补码:0000 1000
    >>>后:0000 0010
-128>>>2
    -128的原码:1000 0000
        反码:0111 1111
        补码:1000 0000(内存中保存的就是补码) 
    >>>运算后:1110 0000


注意没有<<<

注意:以上的都是模拟8位2进制数来计算的,实际上-128没法表示,如果你会的话评论下面教教我

四.赋值运算符


注意:

byte b = 2;
b = (int)(b + 2);//需要强转
b += 2;//不需要强转


五.字符串连接符

"+"号既是数值运算符号也是字符串的拼接符号

String str = "hello";
int a = 10;
str = str + a;//str会变成hello10


六.三目运算符

语法 : boolean表达式 ? 真语句 : 假语句;

int i = 0;
// 需求 : 如果为真 给变量i 赋值1,否则赋值 11
i =  2<3 ? 1 : 11;


七.优先级

以下优先级由高到低

标签:1111,反码,补码,运算符,0000,javaSE,原码
来源: https://blog.csdn.net/mizui_i/article/details/121476728

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

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

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

ICode9版权所有