Java 基本语法-运算符

算数运算符

用于执行基本的数学运算,包括加(+)、减(-)、乘(*)、除(/)、模(%)等。

int a = 10;
int b = 2;
int sum = a + b; // 加法
int diff = a - b; // 减法
int prod = a * b; // 乘法
int quot = a / b; // 除法(取商)
int mod = a % b; // 取模(取余数)

比较运算符

用于比较两个值的大小,并返回布尔值(true 或 false)。包括等于(==)、不等于(!=)、大于(>)、小于(<)、大于等于(>=)、小于等于(<=)等。

int a = 10;
int b = 20;
boolean isEqual = a == b; // 等于
boolean isNotEqual = a != b; // 不等于
boolean isGreater = a > b; // 大于
boolean isLess = a < b; // 小于
boolean isGreaterEqual = a >= b; // 大于等于
boolean isLessEqual = a <= b; // 小于等于

逻辑运算符

用于组合或修改布尔值。包括逻辑与(&&)、逻辑或(||)、逻辑非(!)等。

boolean t = true;
boolean f = false;
boolean andResult = t && f; // 逻辑与(两边的表达式有一项为假,结果就为假。两边的表达式全为真,结果才为真)
boolean orResult = t || f; // 逻辑或(两边的表达式有一项为真,结果就为真。两边的表达式全为假,结果才为假)
boolean notResult = !t; // 逻辑非(取反操作)
boolean flag = t^f;//逻辑异或(两边一真一假为假,两边真真为真,两边假假为真)

位运算符

用于对二进制位进行操作。包括按位与(&)、按位或(|)、按位非(~)、按位异或(^)、左移(<<)、右移(>>)、无符号右移(>>>)等。

int x = 5; // 二进制表示: 0101
int y = 3; // 二进制表示: 0011
int andResult = x & y =1 ; // 按位与(两个二进制对应位都为1时,结果为1,否则结果为都0)
int orResult = x | y =7 ; // 按位或(两个二进制对应位都为0时,结果为0,否则结果为都1)
int notResult = ~x; // 按位非(对二进制数进行取反操作,原码位为0,运算后得1,原码位为1,运算后得0)
int xorResult = x ^ y = 6; // 按位异或(两个二进制对应位相同时,结果为0,否则结果为1)
int leftShiftResult = x << 2; // 左移两位,等同于乘以4,结果为20 (二进制表示: 10100)
int rightShiftResult = x >> 2; // 右移两位,等同于除以4,结果为1 (二进制表示: 00001)
int unsignedRightShiftResult = x >>> 2; // 无符号右移两位,等同于除以4,结果为1 (二进制表示: 00001)

赋值运算符

用于给变量赋值。包括简单的赋值(=)、加等号赋值(+=)、减等号赋值(-=)、乘等号赋值(*=)、除等号赋值(/=)、模等号赋值(%=)、左移等号赋值(<<=)、右移等号赋值(>>=)、无符号右移等号赋值(>>>=)等。

在代码中 a++++a 都实现了变量的递增,但它们的执行顺序和返回值是不同的。a++ 会返回之前的 a 值,即先返回原来的值再将a增加一,而 ++a 不返回任何值,只是简单地改变了 a 的值
通俗的说就是 a++ 先返回后增加a的值,++a 不返回值,单纯的将a增加了1

int a = 10; // 简单赋值
a += 5; // 加等号赋值,等同于 a = a + 5, 结果为15
a -= 5; // 减等号赋值,等同于 a = a - 5, 结果为5
a *= 5; // 乘等号赋值,等同于 a = a * 5, 结果为25
a /= 5; // 除等号赋值,等同于 a = a / 5, 结果为5
a %= 5; // 取模等号赋值,等同于 a = a % 5, 结果为0 (因为余数是0)
a <<= 2; // 左移等号赋值,等同于 a = a << 2, 结果为40 (二进制表示: 101000)
a >>= 2; // 右移等号赋值,等同于 a = a >> 2, 结果为2 (二进制表示: 0010)
a >>>= 2; // 无符号右移等号赋值,等同于 a = a >>> 2, 结果为2 (二进制表示: 0010)



十进制与二进制
十进制转二进制:将十进制数除以二,然后将余数写入二进制数的最低位。接着,我们将商再次除以二并将余数写入二进制数的下一位。我们重复这个过程,直到商为零。最后,我们将二进制数从右到左读取,就得到了十进制数的二进制表示
例如:10 用二进制表示,10➗2 =5……0;5➗2=2……1;2➗2=1……0;1➗2=0……2、1 就得到了 10的二进制:1010
10.2用二进制表示 整数部分参考上边,
小数部分:用小数部分不断*2
0.2 * 2=0.4 整数部分0 小数部分0.4
0.4 * 2=0.8整数部分0 小数部分0.8
0.8 * 2=1.6整数部分1 小数部分0.6
0.6 * 2=1.2 整数部分1 小数部分0.2
0.2 * 2=0.4 整数部分0 小数部分0.4(进入循环,无法精确表达。只能根据精度需要,截取小数点后若干位来表示了) 二进制 0.00110
即10.2转二进制:1010.00110

二进制转十进制
二进制数:1111
小技巧对应 8421
例如:1011
第一位 是 1 * 8
第二位是 0 * 4
第三位是 1 * 2
第四位是1 * 1
转化为十进制就是 1 * 8+0 * 4 +1 * 2+1 * 1 = 11

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值