java4a_四.java运算符与条件语句

2%-5//结果为2,因为正负应该由左边的数决定.

short s=4;

s=s+5;//会失败,原因为右边运算完必然是整数,无法判断范围是否在short内,容易造成精度丢失.

而 s+=5可以通过,因为会做自动转换

3.(重要)

短路与 :&& :

与&的区别,&无论左边结果,两边都会参与计算,而&&是当左边为false时,右边不参与运算

短路或 :||

|两边都会参与运算,而||当左边为true时右边不参与运算

位运算符**

a.  << :左移(移两个进制位)

规律:3<<1=6;---------(3* 2^1=6);

3<<2=12; --------(3* 2^2=12)

左移就是乘以2的几次幂运算,移几位就是几次幂.

b.  >> :右移(将二进制码向右移动)

规律:就是除以2的次幂运算,移几位就是几次幂.

右移是原最高位是什么,空位就补什么

c.无符号右移:与右移运算符一样,空位都补0.

d. &:与运算:

6&3=2;

6:  110

3: &011

---------------

010=2

运用:当要获取001010011的后三位时,可以让他与00000111进行 与运算.

即可用于获取二进制中的有效位1.

e. |:或运算

6|3=7:

110

|011

---------------

111=7

f. ^:异或

110

^011

--------------

101

规律:一个数异或另一个数两次后还是这个数

g.  ~ : 反码:

~6=-7

练习:

最有效率的运算2乘以8:通过位移运算:

system.out.println(2<<3);

对2个整数变量的值进行互换(不需要第三方变量)

int a=3,b=7;

a=a^b;//a=3^7

b=a^b;//b=3^7^7=3

a=a^b;//a=3^7^3

5.三元运算符:

(条件表达式)?表达式1:表达式2

6.程序流程控制:

if ; if{}else{}

7.switch

switch语句中的defalult 的摆放位置不会影响程序运行

匹配的答案一直执行,执行到break或者switch结束

switch只支持byte,short,int,char,string

switch(controllingExpression)

{

case constantExpression1:statement1;break;

case constantExpression2:statement2;break;

case constantExpression3:statement3;break;

...

default:statement;

}

8.if可以用于判断数值也可以判断区间,而switch只用于判断固定值

9."\t" \代表制表符 可以用于对齐如九九乘法表

\n:换行

\r:换行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值