public class NewClass { public void 位运算符(){ /* * 1 ~ 按位取反 1=~0 * 2 & 按位与 0&1=0 1&1=1 0&0=0 * 3 | 按位或 0|1=1 1|1=1 0|0=0 * 4 ^ 按位异或 0^1=1 1^1=0 0^0=0 1^0=1 相同得0,相异得1 */ int x=53; int r=~x; System.out.println("r="+r); //-54,按位取反加一 int y=22; // 10110 System.out.println("x&y="+(x&y)); //20 System.out.println("x|y="+(x|y)); //55 System.out.println("x^y="+(x^y)); //35 /* * 移位运算符 * << 算数左移运算符 每向左移动一位,右边用0补齐,左边多出的位数丢掉 * >> 算数右移运算符 每向右移动一位,左边用0补齐,右边多出的位数丢掉 * >>>逻辑右移运算符 */ System.out.println("4<<2="+(4<<2)); // 0000 0100(4)左移两位为0001 0000(16) System.out.println("4<<3="+(4<<3)); //32 System.out.println("12>>2="+(12>>2)); //0000 1100(12)右移两位为0000 0011(3) System.out.println("-12>>2="+(-12>>2)); //-3 System.out.println("12>>>2="+(12>>>2)); System.out.println("-12>>>2="+(-12>>>2)); /* *位运算优先级别: ~ << >> >>> & ^ */ } public void priorityOfBitOperator(){ int a=-67,b=116,c=78; //a=10111101,b=01110100,c=01001110 int d=~a|b&c; int e=~c>>2&(a|~b); int f=a^b&c; System.out.println("d="+d); System.out.println("e="+e); System.out.println("f"+f); } public void 赋值运算符(){ //普通赋值运算符 byte b=123; int i=b; int a=222; int j=i+a; //扩展赋值运算符 // += -= *= /= %= &= |= ^= >>= <<= >>>= i+=1; // i=i+1 124 i+=100; // i=i+100 224 i-=10; // i=i-10 214 i*=2; // i=i*2 428 System.out.println("i="+i); //428 } public void 条件运算符(int 成绩){ //三目运算符 //逻辑表达式?表达式1:表达式2 //int 成绩=0; String result; result=成绩>=60?"通过":"没有通过"; System.out.println("成绩:"+result); } public static void main(String[] args){ NewClass oe=new NewClass(); oe.位运算符(); oe.priorityOfBitOperator(); //oe.调用方法 oe.赋值运算符(); oe.条件运算符(80); } }
JAVA位、赋值、条件运算符等
原文作者:看庭前花开花落
原文地址: https://www.cnblogs.com/loveyxe/p/6657769.html
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
原文地址: https://www.cnblogs.com/loveyxe/p/6657769.html
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。