栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

JavaSE - 运算符

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaSE - 运算符

目录

运算符

1.算术运算符

2. 关系运算符

3. 逻辑运算符

4. 位运算符

5. 移位运算符

6. 条件运算符


这里简单记录一些比较不同的,新颖的,或者值得注意的,以前没注意到的知识点。

运算符

1.算术运算符

①加,减,乘,除,取余  + - * / %

加减乘没什么意思,这一部分其实是和上一篇博客的类型转换,以及类型提升有关联。

1. 除:

除数不能为0

int/int结果为int,int/float结果为float,int/double结果为double,这就是类型提升的原理。

2. 取模

Java中的%与C/C++中的不同,C/C++中只能对整数取模,而Java中可以对小数取模。

其中的f不可省略,因为若无f,则1.7 0.6则为double型字面值常量。结果是不能用float接收的。

②增量运算符 

+= -= *=  /= %=  <<= >>= >>>=  .....

没什么好说的,很方便,并且有一个特殊点:

 可以看到,+= -= 运算符会自动进行强制类型转换。比如 f1 float变量直接减一个double字面值常量然后赋值给一个float变量是非法的,而-=就可以,说明编译器自动进行了一些处理,可见 += -= *= /=等运算符的方便之处。

③自增自减运算符++--

略了,没什么变化,没什么值得注意的。

2. 关系运算符

!=  ==  < > <= >= 返回值是boolean类型,if,for,等条件判断部分,只能是boolean类型。

3. 逻辑运算符

逻辑运算符的操作数和返回值都是boolean类型

&&逻辑与     ||逻辑或    !逻辑非

最重要的就是逻辑与 和 逻辑或的短路求值了,这个在避免C++的非法访问时经常使用。

string s;
if(cin >> s && s[0] == 'q')
    return;
String s;
if(!cin>>s || s == "quit")
    return;

Java如何实现类似代码目前还不会......

当 & 和 | 的左右操作数的结果是boolean类型时,也支持&& || 的功能,但是不支持短路求值。

4. 位运算符

Java 中对数据的操作的最小单位不是字节, 而是二进制位.

位运算符主要有四个: & | ~ ^

位操作表示 按二进制位运算. 计算机中都是使用二进制来表示数据的(01构成的序列), 按位运算就是在按照二进制位的 每一位依次进行计算

& 按位与:两个操作数,对应二进制位都为1则结果为1,否则为0

|  按位或:两个操作数,对应二进制位都为0则结果为0,否则为1

~ 按位取反:一个操作数,二进制位的1变为0,0变为1

^ 按位异或:两个操作数,异,对应二进制位相同为0,相异为1

当 & | 左右操作数结果为boolean类型时,才表示逻辑运算,操作数为整型时,表示位运算。

5. 移位运算符

移位运算符有三个,操作的都是二进制位。

<<  左移运算符:移掉最左侧的二进制位,右侧补0

>>  右移运算符:移掉最右侧的二进制位,左侧补符号位(正数补0,负数补1)

>>> 无符号右移运算符:移掉最右侧的二进制位,左侧补0(无论正负)

1. 左移 1 位, 相当于原数字 * 2. 左移 N 位, 相当于原数字 * 2 的N次方.

2. 右移 1 位, 相当于原数字 / 2. 右移 N 位, 相当于原数字 / 2 的N次方.

3. 由于计算机计算移位效率高于计算乘除, 当某个代码正好乘除 2 的N次方的时候可以用移位运算代替.

4. 移动负数位或者移位位数过大都是未定义的行为。

 可以看到,-15无符号右移,则符号位补0。那么就会变成一个很大的正数。

6. 条件运算符

表达式1 ?表达式2 :表达式3

Java唯一一个三目运算符。表达式1的结果必须是boolean类型。同样存在短路求值,表达式1结果为true,执行表达式2,并以此作为整个表达式的结果。表达式1结果为false时,执行表达式3,并以此作为整个表达式的结果。

7.运算符的优先级

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/997873.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号