位运算符主要针对二进制,它包含了:“与”、“非”、“或”、“异或”。从表面上看似乎有点像逻辑运算符,但逻辑运算符是针对两个关系运算符来进行逻辑运算,而位运算符主要针对两个二进制数的位进行逻辑运算。以下具体介绍每一个位运算符。

1.与运算符
与运算符用符号“&”表示,其使用规律例如以下:
两个操作数中位都为1,结果才为1,否则结果为0,比如以下的程序段。
public class data13
{
public static void main(String[] args)
{
int a=129;
int b=128;
System.out.println("a 和b 与的结果是:"+(a&b));
}
}
执行结果
a 和b 与的结果是:128
以下分析这个程序:
“a”的值是129,转换成二进制就是10000001,而“b”的值是128,转换成二进制就是10000000。依据与运算符的运算规律,仅仅有两个位都是1,结果才是1,能够知道结果就是10000000,即128。

2.或运算符
或运算符用符号“|”表示,其运算规律例如以下:
两个位仅仅要有一个为1,那么结果就是1,否则就为0,以下看一个简单的样例。
public class data14
{
public static void main(String[] args)
{
int a=129;
int b=128;
System.out.println("a 和b 或的结果是:"+(a|b));
}
}
执行结果
a 和b 或的结果是:129
以下分析这个程序段:
a 的值是129,转换成二进制就是10000001,而b 的值是128,转换成二进制就是10000000,依据或运算符的运算规律,仅仅有两个位有一个是1,结果才是1,能够知道结果就是10000001,即129。

3.非运算符
非运算符用符号“~”表示,其运算规律例如以下:

假设位为0,结果是1,假设位为1,结果是0,以下看一个简单样例。
public class data15
{
public static void main(String[] args)
{
int a=2;
System.out.println("a 非的结果是:"+(~a));
}
}

4.异或运算符
异或运算符是用符号“^”表示的,其运算规律是:
两个操作数的位中,同样则结果为0,不同则结果为1。以下看一个简单的样例。
public class data16
{
public static void main(String[] args)
{
int a=15;
int b=2;
System.out.println("a 与 b 异或的结果是:"+(a^b));
}
}
执行结果
a 与 b 异或的结果是:13
分析上面的程序段:a 的值是15,转换成二进制为1111,而b 的值是2,转换成二进制为0010,依据异或的运算规律,能够得出其结果为1101 即13。

随机推荐

  1. jbpmAPI-2

    2.1. Downloads 所有的版本都可以从SourceForge下载.选择您想要下载的版本,然后选择你想要工件: https://sourceforge.net/projects/jbpm/fi ...

  2. Hadoop_Lucene

    http://codelife.me/blog/2012/11/03/jackson-polymorphic-deserialization/ http://itindex.net/blog/2012 ...

  3. 第五节 Code 128 码

    128码开始於1981年推出,是一种长度可变.连续性的字母数字条码.与其他一维条码比较起来,128码是较为复杂的条码系统,而其所能支援的字元也相对地比其他一维条码来得多,又有不同的编码方式可供交互运用 ...

  4. Qt技巧:Win7下打包发布Qt程序(解释的比较清楚,把exe和dll伪装合并成一个文件)

    转自:http://www.stardrad.com/blog/qt-5%E7%A8%8B%E5%BA%8F%E5%9C%A8windows%E4%B8%8A%E7%9A%84%E5%8F%91%E5 ...

  5. android音乐柱状频谱实现

    from: http://blog.csdn.net/topgun38/article/details/7663849 原文地址:http://blog.csdn.net/caryee89/artic ...

  6. cocos2d-x 之Scene和Layer

    ***************************************转载请注明出处:http://blog.csdn.net/lttree************************** ...

  7. iOSAPP启动时实现加载广告

    现在很多APP在启动的时候都在加载广告,现在也很流行,主要是盈利啊.笔者也做了很多关于广告的事情.现在记录下自己在APP启动的时候,怎么加载广告的. 下面总结下广告加载的三种方式 1.现在很多APP的 ...

  8. 一个库搞定各种分享--ShareSDK

    ShareSDK是为iOS.Android.WindowsPhone提供社会功能的一个组件,开发者只需10分钟即可集成到自己的APP中,它不仅支持分享给QQ好友.微信好友.微信朋友圈.新浪微博.腾迅微 ...

  9. Ubantu指令收藏

    Ubuntu常用命令大全,学习ubuntn系统的朋友可以收藏下,用ctrl+F查找即可   一.文件/文件夹管理 ls 列出当前目录文件(不包括隐含文件) ls -a 列出当前目录文件(包括隐含文件) ...

  10. POJ 2451 Uyuw's Concert(半平面交nlgn)

    //#pragma comment(linker, "/STACK:16777216") //for c++ Compiler #include <stdio.h> # ...