博客信息

编程基础之运算符(位运算、三元运算符)

发布时间:『 2019-05-17 10:13』  博客类别:java基础  阅读(697)

位运算


左移右移:

<<:左移其实就是乘以移动的位数次幂

>>:右移其实就是除以移动的位数次幂

>>>:无符号右移


小李飞刀_编程基础


与运算、或运算、异或运算


小李飞刀_编程基础


位运算细节


小李飞刀_编程基础


从上面可以看出,位运算可以用来加密


位运算应用


最有效率的算出2*8的结果?

小李飞刀_编程基础

将两个整数的值进行互换(不通过第三方变量)?

小李飞刀_编程基础

利用位运算及与运算完成进制之间的转换?

十进制换算成二进制

&1,一直右移1位直至移光

 

十进制换算成8进制

&7,一直右移3位直至移光

 

十进制换算成16进制

&15,一直右移4位直至移光


小李飞刀_编程基础


三元运算符


上面的存在问题,换算成十六进制结果是否大于10这是未定的。

我们可以通过三元运算符做改进

 

System.out.println(n1>9 ? (char)(n1-10+A):n1);

 

格式:

条件(true/false)? 表达式1 :表达式2

 

关键字:     Java基础       位运算  

备案号:湘ICP备19000029号

Copyright © 2018-2019 javaxl晓码阁 版权所有