Java中'&'与、'|'或、'^'异或、'<<'左移位、'>>'右移位

 1 public static void main(String[] args) {
 2         /*
 3          * &:与运算
 4          *     全为1则为1,否则为0
 5          */
 6         System.out.print(1 & 0);
 7         System.out.print("--");
 8         System.out.print(1 & 1);
 9         System.out.print("--");
10         System.out.println(0 & 0);
11         // out:0--1--0
12
13         /*
14          * |:或运算
15          *     全为0则为0,否则为1
16          */
17         System.out.print(1 | 0);
18         System.out.print("--");
19         System.out.print(1 | 1);
20         System.out.print("--");
21         System.out.println(0 | 0);
22         // out:1--1--0
23
24         /*
25          * ^:异或运算
26          *     相同为0,不同为1
27          */
28         System.out.print(1 ^ 0);
29         System.out.print("--");
30         System.out.print(1 ^ 1);
31         System.out.print("--");
32         System.out.println(0 ^ 0);
33         // out:1--0--0
34
35         /*
36          * 移位操作符:
37          *     << 左移位操作符能按照操作符右侧指定的为数将操作符左边的操作数向左移动(在低位补0)
38          *     >> 右移操作符则按照操作符右侧指定的位数将操作符左边的操作符向右移动
39          */
40         System.out.print(2 << 2);//out:8
41         System.out.print("..");
42         System.out.print((-1) << 2);//out:-4
43         System.out.print("..");
44         System.out.print((-4) >> 1);//out:-2
45         System.out.print("..");
46         System.out.print(3 << 1);//out:6
47         System.out.print("..");
48         System.out.print(4 >> 1);//out:2
49         System.out.print("..");
50         System.out.println(8 >> 2);//out:2
51     }

Java中'&'与、'|'或、'^'异或、'<<'左移位、'>>'右移位

时间: 2025-01-02 03:28:52

Java中'&'与、'|'或、'^'异或、'<<'左移位、'>>'右移位的相关文章

剑指offer系列——二维数组中,每行从左到右递增,每列从上到下递增,设计一个算法,找其中的一个数

题目:二维数组中,每行从左到右递增,每列从上到下递增,设计一个算法,找其中的一个数 分析: 二维数组这里把它看作一个矩形结构,如图所示: 1 2 8 9 2 4 9 12 4 7 10 13 6 8 11 15 在做这道题的时候我最先考虑的是每次比较对角线上的元素可能可以取得较好的效果, 以查找9为例, 从1(0,0)开始,1<10,可以得出结论,10在1的右侧或下侧: 1 2 8 9 2 4 9 12 4 7 10 13 6 8 11 15 然后看4(1,1),4<9, 1 2 8 9 2

[转载]矩阵及变换,以及矩阵在DirectX和OpenGL中的运用问题:左乘/右乘,行优先/列优先

[转载]http://www.xuebuyuan.com/882848.html (一)首先,无论dx还是opengl,所表示的矢量和矩阵都是依据线性代数中的标准定义的:“矩阵A与B的乘积矩阵C的第i行第j列的元素c(ij)等于A的第i行于B的第j列的对应元素乘积的和.”(实用数学手册,科学出版社,第二版)例如c12 = a11*b11+a12*b21+a12*b13... (二)在明确了这一点后,然后我们再看“矩阵的存储方式”,矩阵存储方式有两种,一种是“行主序(row-major order

(转)思考:矩阵及变换,以及矩阵在DirectX和OpenGL中的运用问题:左乘/右乘,行优先/列优先,...

转自:http://www.cnblogs.com/soroman/archive/2008/03/21/1115571.html 思考:矩阵及变换,以及矩阵在DirectX和OpenGL中的运用1.矩阵和线性变换:一一对应 矩阵是用来表示线性变换的一种工具,它和线性变换之间是一一对应的.考虑线性变换:a11*x1 + a12*x2 + ...+a1n*xn = x1'a21*x1 + a22*x2 + ...+a2n*xn = x2'...am1*x1 + am2*x2 + ...+amn*x

JavaScript基础 indexOf() 返回一个子字符串在原始字符串中的索引 从左往右查找

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ ex1: code: 1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta http-equiv="Content-Type" content="text/html; chars

java中的移位运算符与正负数转换

移位 java 中有对 二进制移动分为 左移(<<) 和右移(>>) 其中右移还分为 有符号右移(>>) 和无符号右移(>>>) 1.有符号右移:将二进制向右移动 如果原来符号位为0 则新符号位也用0 否则用1; 2.无符号右移:将二进制向右移动 不管原来的符号位是0还是1 一律用0 补位; 正负数转换 举个例子: 3的二进制 用一个字节表示 0000 0011 正常一个负数的变现方式是:其正数按位取反再加1 0000 0011 取反:1111 110

java中的无符号移位运算

1. 无符号右移   >>>  或 >>> = 无符号右移(>>>)跟右移(>>)运算符不一样. 右移不改变数的正负. 对于一个正数,无符号右移不会变成负数(相当于除以1再取整):但是对于一个负数,无符号右移会将负数变成正数: int i = -4; System.out.printf("%-10d %32s\n", i, Integer.toBinaryString(i)); i >>>= 1;  /

java中的移位运算符

java中有三种移位运算符 <<      :     左移运算符,num << 1,相当于num乘以2 >>      :     右移运算符,num >> 1,相当于num除以2 >>>    :     无符号右移,忽略符号位,空位都以0补齐 int number = -1; //原始数二进制 printInfo(number); number = number << 1; //左移一位 printInfo(number)

java中的基本运算符、取余、逻辑运算符、逻辑运算符、位运算符、移位运算符

注意事项: 常量在编译的时候会赋值,变量在运行的时候才在内存中分配空间赋值. 赋值运算符 += -+ *+ %= \= 在java编译器会进行强制类型转换 取余: 在java中做取余运算的是时候,结果的正负号是取决于被除数. 逻辑运算符&且 |或 !非 ^异或 &&短路与 ||短路或 位运算符:直接操作二进制位的. & (与) 6 & 3 = 2 0000 0110 可以把1看成true & 0000 0011 0看成false --------------

java中的移位运算符:&lt;&lt;,&gt;&gt;,&gt;&gt;&gt;总结

java中有三种移位运算符 <<      :     左移运算符,num << 1,相当于num乘以2 >>      :     右移运算符,num >> 1,相当于num除以2 >>>    :     无符号右移,忽略符号位,空位都以0补齐 下面来看看这些移位运算都是怎样使用的 1 /** 2 * 3 */ 4 package com.b510.test; 5 6 /** 7 * @author Jone Hongten 8 * @