您的位置:首页 > 移动开发 > IOS开发

iOS 学习笔记——0002(位运算符的应用)

2015-10-14 11:50 176 查看
位运算(bit operate),即操作二进制位的运算

& 按位与 (都为1则为1,否则为0)

作用:迅速清零(eg:a&0);
判断奇偶(eg:a&1 为1奇数,为0偶数);
检查状态

| 按位或(有一个为1就为1,否则为0)
作用: eg,a|0XFF a值为255; 因为0XFF值为 11111111

//oc中的应用:添加状态
NSDate* date = [NSDate date];
NSCalendar* calendar = [NSCalendar calendarWithIdentifier:NSCalendarIdentifierGregorian];
NSDateComponents* dateComponents = [calendar components:(NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitDay|NSCalendarUnitHour|NSCalendarUnitMinute|NSCalendarUnitSe     cond) fromDate:date];


^ 按位异或(不同为1,相同为0)
作用:
还原性
//交换两个整数的位置
int a = 10;

int b = 20;

a = a^b;

b = a^b;

a = a^b;
NSLog(@"a = %d b = %d",a,b);

~ 按位取反(位预算符中唯一一个单目运算符)每个位置都取反(对应内存中存的值,如32bit系统的1表示为00000000 00000000 00000000 00000001)

<< 左移运算 (将2进制值向左移动若干位)
作用:
当数字要与2或2的倍数相乘时用,大大提高效率,相当于乘以2的移动位数次数方

>> 右移运算 (将2进制值向右移动若干位)
作用:
与左移运算符相反
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: