您的位置:首页 > 编程语言 > Java开发

Java运算符

2016-04-07 12:48 302 查看
先认识原码,反码,补码的之间换算
正数:原码,反码,补码和二进制形式相同。
负数:原码和正数的二进制的数值部分相同,符号位是1。
     反码和原码的区别是:符号位不变,数值为1变0,0变1。
     补码:反码+1
 如:5:0000 0101     负数-3:1000 0011
 反码:0000 0101     反码:1111 1100
 补码:0000 0101      补码:1111 1101
 补码和原码的相互转换:
 负数的原码=反码-1,再取反。
 或者负数的原码=补码取反+1.
 运算符(掌握)
(1)算术运算符
+,-,*,/,%,++,--

+:正号,加法,字符串连接符
%:两数相除,得到余数
++,--:
单独使用:在操作数的前后,效果一致。
a++:先进行运算,在自加。--a:先自减在进行运算。
(2)赋值运算符
=,+=,-=,*=,/=,%=

=:把右边赋值给左边。
?=:把左边和右边操作后赋值给左边。

注意:赋值的左边不能是常量。
(3)比较运算符
==,!=,>,>=,<,<=

A:结果肯定是boolean类型。
B:不要把==写出=。
(4)逻辑运算符
&:有false则false
|:有true则true
^:相同为false,不同为true。通过情侣关系来理解。
!:非false则true,非true则false。偶数次不改变以前的真假。
&&:和&的结果一样,但是具有短路效果。左边有false,右边不执行。
||:和|的结果一样,但是具有短路效果。左边有true,右边不执行。
(5)位运算符(了解)
要想操作,就必须把所有的数据转换为二进制。然后操作。

注意:

                    位&运算符:有0则0。
           位|运算符:有1则1。

                    位^运算符:相同则0,不同则1。

                        

                    位~运算符:按位取反运算符。也就是1变0,0变1。

                  <<:把数据向左移动。后边补0。其实相当于乘以2的移动位数次幂。
   >>:把数据向右移动。左边补是最高位的值。其实相当于除以2的移动位数次幂。
    >>>:把数据向右移动。左边补0。其实相当于除以2的移动位数次幂。
^:对同一个数据异或两次,该数本身不变。

数据交换:假设a,b是已经知道的int类型的变量
A:方式1(掌握 开发用)
int temp = a;
a = b;
b = temp;
B:方式2(掌握 面试用)
左边a,b,a
右边a^b

a = a ^ b;
b = a ^ b;
a = a ^ b;

C:知道就行
a = a + b;
b = a - b;
a = a - b;
D:知道就行
a = (a+b)-(b=a);
(6)三元运算符
格式:
比较表达式?值1:值2;
执行流程:
如果比较表达式是true,结果是值1;
如果比较表达式是false,结果是值2;

大家可以试做几道题目
A:比较两个数是否相同
B:获取两个数中的最大值
C:获取三个数据中的最大值
D:做C题目的时候,还可以练习三元运算符的嵌套。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息