这个operatoer是什么意思?

时间:2013-07-30 10:05:29

标签: java android operators

在java中的以下代码中:

Notification noti = nBuilder.build();
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
noti.flags |= Notification.FLAG_AUTO_CANCEL;

这个运算符(|=)是什么?

4 个答案:

答案 0 :(得分:7)

noti.flags |= Notification.FLAG_AUTO_CANCEL;

装置

noti.flags = noti.flags | Notification.FLAG_AUTO_CANCEL;

其中|是Bit wise OR operator

答案 1 :(得分:3)

  • |是位或运算符
  • | = noti.flags = noti.flags | Notification.FLAG_AUTO_CANCEL;

    noti.flags | = Notification.FLAG_AUTO_CANCEL;

    计算noti.flags和Notification.FLAG_AUTO_CANCEL的按位OR,并将结果赋给noti.flagsd。

答案 2 :(得分:1)

按位或,与:

相同
noti.flags = noti.flags | Notification.FLAG_AUTO_CANCEL;

它使用操作数的位执行“或”操作。说你有

// noti.flags =                      0001011    (11 decimal)
// Notification.FLAG_AUTO_CANCEL =   1000001    (65 decimal)

// The result would be:              1001011    (75 decimal)

答案 3 :(得分:1)

包含赋值运算符的按位OR。 扩展它将是noti.flags = noti.flags | Notification.FLAG_AUTO_CANCEL; 类似地,你有& =用于按位AND,^ =用于按位XOR,〜=用于按位NOT。