第三章:运算符

目录

一、算数运算符

二、关系运算符

三、逻辑运算符

1.定义:

2.例题:

四、赋值运算符

1.定义:

五、三元运算符

1.定义:

六、运算符优先级(有个印象即可)

七、标识符的命名规则

1.定义:

八、键盘输入语句

1.定义:

九、进制

1.定义:

2.原码、反码、补码:

3 .位运算:


一、算数运算符

+        -        *        /        %        ++        --

注意 10 / 4 = 2 在Java中因为int类型取整位

int  a = 10; a = a ++;  sout(a) //10

注意  小数取余有公式   a % b; a是小数时公式 a - (int)a / b *b;        -10.5 % 3 = -10.5 - (-3)* 3 =  -1.5 

二、关系运算符

==        !=        >        <        >=        <=

*返回值为Boolean值,a > b 称为关系表达式

三、逻辑运算符

1.定义:

短路与 &&        短路或 ||         取反 !        逻辑与 &          逻辑或 |         ^逻辑异或

  • 短路与&&   逻辑与&  区别:&&短路与如果第一个为false,则第二个条件就不会判断了效率高(开发用这个),&逻辑与都需要判断。
  • 短路或 || 逻辑或||  区别:||短路或如果第一个为true,则第二个条件就不会判断了效率高(开发用这个),|逻辑或都需要判断。
  • 非!:!true 为 false    异或^:相同为false,不同为true

2.例题:

int x = 5; int y = 5; if(x++=6 & ++y==6){x=11;} sout(x,y) // 6,5

int x = 5; int y = 5; if(x++=6 && ++y==6){x=11;} sout(x,y)  //6,5

int x = 5; int y = 5; if(x++=5 | ++y==5){x=11;} sout(x,y) //11,6

int x = 5; int y = 5; if(x++=5 || ++y==5){x=11;} sout(x,y) //11,5

四、赋值运算符

1.定义:

+=        -=        *=        /=        %=        

a += 3; ==> a = a + 3;

五、三元运算符

1.定义:

条件表达式  ?表达式1:表达式2;    条件表达式为真,运算结果为表达式1;条件表达式为假,运算结果为表达式2;

表达式1,2可以赋值给变量接收; int a = 1 == 2 ? 1 : 2;

六、运算符优先级(有个印象即可)

七、标识符的命名规则

1.定义:

凡是自己取名字的地方都叫标识符

由26个字母,美元符号,下划线,数字组成,数字不能开头,保留字与关键字不能用,严格区分大小写,不能有空格

  1. 包名:全部小写,com.baidu.exer
  2. 类名、接口名:所有单词首字母大写  SchoolStudent
  3. 变量名:首单词首字母小写,其余单词首字母大写,studentName
  4. 常量名:所有字母都大写

八、键盘输入语句

1.定义:

             Scanner sc = new Scanner(System.in);         int a = sc.nextInt();//得到一个整型

九、进制

1.定义:

  • 二进制:0 1,满二进一,以0B或0b开头。
  • 八进制:0-7,满七进一,以0开头
  • 十进制:0-9,满十进一
  • 十六进制:0-F,满十六进一,以0X或0x开头

二转十:位数次方  0b1011 = 8+2+1 = 11

八转十:位数次方  0234 = 2*64+3*8+4*1=156

十六转十:位数次方 0x23A = 570

十转二:除二取余 34= 100010

十转八:除八取余 131 = 0203

十转十六:除十六取余   237 = 0xED

二转八转十六:每三位为八进制,每四位为十六进制

八进制、十六进制转二进制:每一位对应三个二进制,每四位对应一个二进制

2.原码、反码、补码:

45 ==> 0010 1101             -45 ==> 1010 1101

正数三码合一,负数的反码等于除符号位全部取反,补码在反码的基础上加1

0010 1101        0010 1101        0010 1101

1010 1101        1101 0010        1101 0011

3 .位运算:

位运算采用的是补码来计算。计算机看到的是原码

  • 2&3:2的补码:0000 0010 & 3的补码0000 0011 ==>0000 0010(补码)===>0000 0010(原码)==> 2
  • ~-2:-2的补码:1111 1110   取反 0000 0001(补码) ===> 0000 0001(正数,原码等于补码)==> 1
  • 1 >> 2 等于 1 / 2 / 2 = 0(小数就为0)  15 >> 2  = 15 / 2 / 2 = 3
  • 1 << 2 等于 1 * 2 * 2 = 4          4 << 3 = 4 * 2 * 2 * 2 = 32
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值