Java初学者笔记五-六种常用运算符及进制

hi,大家好,我是终南有客,一个热爱自由的程序员……
想要获取更多信息,请关注(终南有客)公众号,了解最新消息

一.运算符

1、算术运算符(9个)

算术运算符用于在数学表达式中,他们是在代数中使用的方法相同。

1.    单目(只需要一个变量):+(取正)-(取负) ++(自增1) 1. -(自减1) 
2.    双目(需要两个变量):+ 1. * / %(取余) 
3.    三目(需要三个变量):a>b?true:false

说明:

  当a大于b的时候,为true(也就是冒号之前的值),否则为false;这整个运算符包括一个关系运算符(可以是 “>”“<”"!="等等),一个“?”,一个“:”,冒号前后需要有两个表达式或者是值或者是对象。

2、关系运算符(6个)

关系运算符用来比较操作数.

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

3、逻辑运算符和位运算符

逻辑运算符用来描述与、或、非逻辑关系.

1.    AND(与) &
2.    OR(或) |
3.    XOR(异或) ^
4.    Not(非) !
5.    AND(短路与) &&
6.    OR(短路或) ||

a.逻辑运算符用于对boolean型结果的表达式进行运算,运算的结果都是boolean型 。

b.“&”和“&&”的区别在于,如果使用前者连接,那么无论任何情况,“&”两边的表达式都会参与计算。如果使用后者连接,当“&&”的左边为false,则将不会计算其右边的表达式。“|”和“||”的区别与“&”和“&&”的区别一样。

运算规则:
&运算规则:
true&true=true true&false=false false&true=false false&false=false
见false为false。

|运算规则:
true|true=true true|false=true false|true=true false|false=false
见true为true。

!运算规则:
!true=false !false=true
非否即是,非是即否。

^运算规则:
true^true=false true^false=true false^true=true false^false=false
相同则为false,不同则为true。

&&运算规则:
对于&&而言,如果前边的表达式的结果为false,则后边的表达式就不再运算。

||运算规则:
对于||而言,如果前边的表达式的结果为true,则后边的表达式就不再运算。

注意:短路特性可以提高代码的运算速度。

4、位移运算符

位移运算符可以应用到整数类型,长型,整型,短整型,字符和字节。它作用于位,并执行逐位操作.

1. &(与)
2. |(或)
3. ^(异或)
4. << 带符号左移 
5. '>>'带符号右移 
6. '>>>' 无号右移

注:位运算符可以用来进行2的倍数有关的快速计算

原、反、补码

  数据在计算机中是以补码形式来存储的。最高位是一个符号位:如果是正数,最高位为0,如果是负数,最高位为1。对于正数而言,原反补三码一致。负数的反码是在原码的基础上,最高位不变,其余位0变1,1变0,负数的补码是在反码的基础上+1。

1.  61. 00000000 00000000 00000000 00000110—原码/反码/补码
2. -6 1. 10000000 00000000 00000000 00000110—原码
3. 11111111 11111111 11111111 11111001—反码
4. 11111111 11111111 11111111 11111010—补码
5. 11111111 11111111 11111111 11101101—补码
6. 11111111 11111111 11111111 11101100—反码
7. 10000000 00000000 00000000 00010011—原码— -19

5、赋值运算符

赋值运算符是为变量赋值所使用.

1.    = ;
2.    += ;
3.    -= ;
4.    *= ;
5.    /= ;
6.    %= ;
7.    &= ;
8.    ^= ;
9.    |= ;
10.    <<= ;
11.    >>=;

6、其它运算符

instanceof

instanceof运算符只用于对象引用变量,检查对象是否为特定类型(类或接口类型)。

三元

三元运算符又叫三目运算符,还可叫做条件运算符。

格式

逻辑值 ? 表达式1 :表达式2;

int i = 4, j = 7;
int k = i > j ? i : j;
System.out.println(k);//结果为j。
执行顺序:

如果逻辑值为true的话,执行表达式1,;反之执行表达式2。
①三元表达式在运算完成之后必须有一个结果。

//不允许,运算完成之后,没有结果。
A > b ? System.out.println( a ) : System.out.println( b );

②表达式1和表达式2的结果必须是相同类型或相容。

double d = a > b ? a * 2 : a * 2.5;

③在三元表达式形成嵌套的时候,尽量添加()来提高代码的可读性

int max = a > b ? ( a > c ? a : c ) : ( b > c ? b : c );

想要了解更多信息,请关注(终南有客)公众号
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值