Int a=10; System.out.println(~a);程序的输出结果是?

 我来答
枫海蓝空
2012-10-08
知道答主
回答量:15
采纳率:0%
帮助的人:6.9万
展开全部
-11 ,~符号表示按位取反,把10转槐前换为二进制数然后携喊按位取辩明野反再转换为十进制
追问
不是 -5 吗?
追答
正数以原码的形式存储,负数以补码的形式存储

有符号整数是按照最高位判断正负的(java中的数值除了char都是有符号的,都符合这个规则),如果x最高位是1,那么该数是负数,其值为 -((~x)+1),因此
11111111 11111111 11111111 11111111作为int型的话,因为最高位为1,所以其值为 -(0+1)=-1

根据上面的理论,~10=-(~(~10)+1)=-11
补码转换为反码加1后得源码
abcd880129
2012-10-08 · TA获得超过216个赞
知道小有建树答主
回答量:479
采纳率:0%
帮助的人:219万
展开全部
-11
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友12ee0fd
2012-10-08 · TA获得超过4.7万个赞
知道大有可为答主
回答量:1.1万
采纳率:66%
帮助的人:2320万
展开全部
-11
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式