java的或运算
A. java中“|”位或运算符如何理解
把数字转换为2进制 比如 一个数的2进制是 1010001111010100 另一个数的2进制是 1110100101001011 对比每一位 结果 1110101111011111 只要同一回位其中有答一个是1 或者两个都为1 结果就是1 只有两个都是0的时候 结果为0.其实这东西不用深究...意义不大...现在实用性也很少..... 你明白原理 就行了 就是一个字 或
B. JAVA 逻辑运算符
代码来错了,字母敲错了:源
in.nextlnt(); 你打的是lnm的l,应该是大写的i,即I
if(java>90&&c>90){; -- 这里多了个分号
参考下面修改后的
publicstaticvoidmain(String[]args){
Scannerin=newScanner(System.in);
System.out.println("你的Java成绩:");
intjava=in.nextInt();
System.out.println("你的C:");
intc=in.nextInt();
if(java>90&&c>90){
System.out.println("你的奖励:(
*@ο
@*)哇~");
}
System.out.println("测试");
}
C. JAVA中的“>>”和“>>>”运算符
1、>>:右移运算复符,num >> 1,相当制于num除以2。
按二进制形式把所有的数字向右移动对应位数,低位移出(舍弃),高位的空位补符号位,即正数补零,负数补1。符号位不变。
如:-1在32位二进制中表示为:11111111 11111111 11111111 11111111,-1>>1:按位右移,符号位不变,仍旧得到11111111 11111111 11111111 11111111,因此值仍为-1
2、>>>:二进制右移补零操作符,左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充,如value>>>num中,num指定要移位值value移动的位数。
(3)java的或运算扩展阅读
“>>”和“>>>”等移位运算符的运算规则:
1、无符号右移,忽略符号位,空位都以0补齐。
value>>>a,a是要移位值value移动的位数。
无符号右移的规则只记住一点:忽略了符号位扩展,0补最高位无符号右移运算符>>>只是对32位和64位的值有意义。
2、右移位运算符>>,若操作的值为正,则在高位插入0;若值为负,则在高位插入1。
右移补零操作符>>>,无论正负,都在高位插入0。
D. java的与运算
在java中,设计int和比int位数来的小的类型,如byte,char等,都是先把小类型扩展成int再来运算,回
byte b=-64
-64 的原答码 11000000
反码 10111111
补码 11000000
b的整型值在扩展时最左边一位是符号位1,扩展后就是11111111 11000000
而b&255,这里255是整型,其值是00000000 11111111,与操作的结果是00000000 11000000
E. java 或运算符
||这是javascript吧
或运算符是和抄java一样的,都袭是双竖线 ||
从需要的逻辑上用并且 && 是正确的,问题在于你的取值方式可能有问题
myform.sex.value很有可能没有取到值,而是null 或者是 undefined,你可以alert(myform.sex.value) 看看是什么,否则只要取到了值进入条件判断,是肯定能进入条件语句内的。
F. JAVA怎么进行逻辑运算
1+1换成java代码就是逻辑运算,逻辑运算就是1+1=2的过程
G. java 逻辑运算
在Java中,逻辑运算有And、Or、Not三种,其中And、Or又分为普通逻辑运算和短路逻辑运算两种。其中普通逻辑运算And用“&”表示,“|”表示或者关系。短路逻辑运算的时候,“&&”表示短路与,“||”表示短路或。
1、一般逻辑运算需要在逻辑运算符两侧的逻辑表达式,都参与逻辑运算,其表达式的值进行比较,依次计算出最后的值。
2、短路逻辑运算符需要首先计算最左边的表达式,如果最左边的表达式成立,则不再进行整个表达式的判断,直接取最左边的表达式为整个表达式的值。
下面的例子虽然输出的值一样,但是运算的方式不一样:
private void testAnd(boolean on ,boolean
tw){
System.out.println("true&&false = "+
(true&&false));
System.out.println("false&&false = "+
(false&&false));
System.out.println("false&&true = "+
(false&&true));
System.out.println("true&&true = "+
(true&&true));
System.out.println(" ");
System.out.println("true&false = "+ (true&false));
System.out.println("false&false = "+
(false&false));
System.out.println("false&true = "+ (false&true));
System.out.println("true&true = "+ (true&true));
System.out.println(" ");
System.out.println("true||false = "+ (true||false));
System.out.println("false||false = "+
(false||false));
System.out.println("false||true = "+ (false||true));
System.out.println("true||true = "+
(true||true));
System.out.println(" ");
System.out.println("true|false = "+ (true|false));
System.out.println("false|false = "+
(false|false));
System.out.println("false|true = "+ (false|true));
System.out.println("true|true = "+
(true|true));
}
输出结果为:
短路或“&&”只有在左边的表达式值为true时,才会考虑右边表达式的值,否则直接取左边的值为整个表达式的值;
true&&false = false
false&&false = false
false&&true = false
true&&true =
true
//全部计算表达式两面的值,然后取值运算;
true&false = false
false&false = false
false&true = false
true&true =
true
短路或“||”只有在左边的表达式值为false时,才会考虑右边表达式的值,否则直接取左边的值为整个表达式的值;
true||false =
true
false||false = false
false||true = true
true||true = true
普通或"|"全部计算表达式两面的值,然后得出结果
true|false = true
false|false = false
false|true = true
true|true = true
适用短路运算的条件
1)、表达式前后的逻辑条件有明显的顺序关联关系,顺序条件早的在表达式的左边;
2)、逻辑运算符比较少,不会有嵌套或者短路与非短路逻辑混合的情况;
3)、使用短路运算,必须清楚的明白所要判断的逻辑值的具体细节;
4)、如果"&&"和"||"混用,则不考虑使用短路运算;
H. Java中的运算符有哪些
1.算术运算抄符
Java的算术运算符分为袭一元运算符和二元运算符。一元运算符只有一个操作数;二元运算符有两个操作数,运算符位于两个操作数之间。算术运算符的操作数必须是数值类型。
(1)一元运算符:
一元运算符有:正(+)、负(-)、加1(++)和减1(--)4个。
加1、减1运算符只允许用于数值类型的变量,不允许用于表达式中。加1、减1运算符既可放在变量之前(如++i),也可放在变量之后(如i++),两者的差别是:如果放在变量之前(如++i),则变量值先加1或减1,然后进行其他相应的操作(主要是赋值操作);如果放在变量之后(如i++),则先进行其他相应的操作,然后再进行变量值加1或减1。
I. JAVA逻辑运算
&,|,^这来几个是位运自算,&&,||这是逻辑运算
4&&2 结果是true;
4&2 结果是6;(4的二进制100,2的二进制010,每一位与运算之后是000,也就是0)
"||"与"|"同理
4||2 结果是true;
4|2 结果是6;(4的二进制100,2的二进制010,每一位或运算之后是110,也就是6)
flag1^flag2
就是求flag1和flag2每一位异或的结果。
异或:1^1=0,0^0=0,1^0=1,0^1=1也就是相同值为0,不同值为1。
J. java中&和&&是怎么运算的
& 和 && 相同点:
都表示“与”操作。这里的“与”和数学中的“与或非”中的“与”意义相同,都遵循“一假必假”原则。即“与”符号两边的元素只要有一个为假,"与"操作执行后的结果就为假。
& 和 && 的区别:
1)& 表示“按位与",这里的”位“是指二进制位(bit)。
例:十进制数字8 转化为二进制是:1000 ;数字9 转化为二进制是1001 。
则如有以下程序:
public class Test {
public static void main(String[] args) {
System.out.println(9 & 8);
}
}
输出结果应该是:8
原因:1001 & 1000 = 1000 。 计算机中一般1表示真,0表示假。最左边一位1&1=1,最右边一位1&0 = 0.
2) && 表示逻辑”与“ ,即java中的boolean值才可以存在于&&符号的左右两侧。
true && false = false ,true && true = true , 依旧是"一假必假"。
值的注意的是:&& 符号有所谓的“短路原则”,当 A && B 出现时,如果A经判断是假,那么B表达式将不会获得执行或被判断的机会。直接结果就为假。
注:关于十进制与二进制的转换,简单的说每四位可以遵循”8421“原则,1001即8+1=9,1011即8+2+1=11