java中 |=这个运算是什么意思

tx183584 2010-07-03 09:18:47
|= 从没见过这个,,想问下..
...全文
399 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuanyemars 2010-07-06
  • 打赏
  • 举报
回复
int x = 01011; //用x表明用户的权限码

int model_1 = 01000; //模块1的编码
int model_2 = 00100; //模块2的编码
int model_3 = 00010; //模块3的编码
int model_4 = 00001; //模块4的编码

System.out.println((x&model_1) > 0);//用户是否有权使用模块1
System.out.println((x&model_2) > 0);//用户是否有权使用模块2

关于按位与的使用提示~~
System.out.println((x&model_3) > 0);//用户是否有权使用模块3
System.out.println((x&model_4) > 0);//用户是否有权使用模块4
  • 打赏
  • 举报
回复
这 54 种运算符,无论基础多么好,要找全是很困难的,不信大家可以试一试,呵呵 :)
please_call_me_J 2010-07-05
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wumindeyoushang 的回复:]
我想与+=,/=等的意思差不多吧!!!
[/Quote]

应该就是复合赋值运算吧把数据进行|运算后赋值给左边
大_爱 2010-07-05
  • 打赏
  • 举报
回复
学习了
  • 打赏
  • 举报
回复
Java 中有 14 个优先级别 54 种运算符,像“|=”就充当了其中的两种;像“()”就充当得最多,充当了三种:方法参数、实例构造和强制类型转换;Java 运算符中拥有两个非符号的运算符:new 和 instanceof
sun0322 2010-07-05
  • 打赏
  • 举报
回复
或存

学习了!
那么还应该有
!=
^=
  • 打赏
  • 举报
回复
参看这个帖子,楼主处第 1 题题目

http://topic.csdn.net/u/20080130/17/7fdd8b93-bdd6-467a-863e-fc3c9731bc52.html

在这里复制过来:

如果问大家“&”、“|”、“^”这三个是什么运算符?基会本上都会回答“位运算符”,但这样的回答只能得50分。大多数的Java程序员很可能不知道它还能充当其他的运算符——布尔逻辑运算符(前提是两边的数据类型为布尔类型)。

在布尔逻辑运算符中这三个运算符充当着“布尔逻辑与”、“布尔逻辑或”和“布尔逻辑异或”的角色。前面两个把它们再复制一个放在一起就成了逻辑运算符。布尔逻辑与(&)和布尔逻辑或(|)运算符的工作方式同逻辑与(&&)和逻辑或(||)的工作方式相同,布尔逻辑运算符的优先级别要高于逻辑运算符,除此之外它们还有一点细微的差别,看一看下面的程序将会输出什么,就会明白了。

最后一个布尔逻辑异或(^)用得就更少了,可以采用关系运算符不等于(!=)来代替,在此就不深究了。

布尔逻辑运算符与逻辑运算符还有个区别,就是布尔逻辑运算符可以与赋值运算符(=)结合成布尔逻辑赋值运算符(&=、|=、^=),而逻辑运算符就没有这样的功能,可能它本身就有两个了吧,再结合“=”的话就变三个了,呵呵,太多了 :)
  • 打赏
  • 举报
回复
int i = 1;
i |= 2; // 这与 i = i | 2; 类似

boolean b = false;
b |= true; // 这与 b = b | true 类似
dr_lou 2010-07-05
  • 打赏
  • 举报
回复
package com.xuz.csdn.july05;

public class Test {

public static void main(String[] args) {
int i = 1;
System.out.println(i |= 2);

boolean b = true;
System.out.println(b |= false);
}

}


蒙出来了。
dr_lou 2010-07-05
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 bao110908 的回复:]
充当两种运算符:

当操作数为数值类型时充当“按位或赋值运算符”
当操作数为布尔类型时充当“布尔或赋值运算符”
[/Quote]

求例子学习,搜索引擎搜不出
prince_java 2010-07-05
  • 打赏
  • 举报
回复
楼主是不是把!=看成|=了?
  • 打赏
  • 举报
回复
充当两种运算符:

当操作数为数值类型时充当“按位或赋值运算符”
当操作数为布尔类型时充当“布尔或赋值运算符”
游离灵魂 2010-07-03
  • 打赏
  • 举报
回复
我想与+=,/=等的意思差不多吧!!!
大_爱 2010-07-03
  • 打赏
  • 举报
回复
没见过。
2010-07-03
  • 打赏
  • 举报
回复
|= 从没见过这个,,我也想问下..

50,549

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧