<cnmm22 动感原创:http://blog.csdn.net/cnmm22/article/details/44853965>
>>1 就是除以 2,1<< 就是乘以 2 的意思。>>n 就是除以(2的n次方)的意思,<<n 就是乘以(2的n次方) 的意思。其中的原理其实很简单的,你只需要稍微了解一下位运算的知识就行。可看这里:http://yun.itxdl.cn/course/59/learn#lesson/1507。
比如: 18>>1=9,
18<<1=36,
18<<2=72,
18<<3=144,
但是特别的:18>>2=4,除2有余数额会取整,
18>>8=0,多次向右移位后最终等于0。
用途: 在可能的时候代替“/”除号,除号是一个代价相对 大的操作。(double 等类型不适用)
>>1 就是除以 2,1<< 就是乘以 2 的意思。>>n 就是除以(2的n次方)的意思,<<n 就是乘以(2的n次方) 的意思。其中的原理其实很简单的,你只需要稍微了解一下位运算的知识就行。可看这里:http://yun.itxdl.cn/course/59/learn#lesson/1507。
比如: 18>>1=9,
18<<1=36,
18<<2=72,
18<<3=144,
但是特别的:18>>2=4,除2有余数额会取整,
18>>8=0,多次向右移位后最终等于0。
用途: 在可能的时候代替“/”除号,除号是一个代价相对 大的操作。(double 等类型不适用)