java入门学习(十一)逻辑运算符和位运算符
来源:互联网 发布:人工智能 经济学 论文 编辑:程序博客网 时间:2024/05/16 00:47
请关注我的博客:www.taomaipin.com
家里有急事 暂停了几天,抱歉,现在呢开始说说java的运算语句和运算符
如果想利用java的运算语句 那么就离不开java的运算符,前面第九章讲了java的算术运算符,那么现在咱们说说java的逻辑运算符。特别强调一下
我在这里说的是逻辑运算符而不是位运算符,至于什么是位运算符 我后面章节在说。
java的逻辑运算符包括与、或、非,那么咱们说说这四种逻辑运算符以及在运算语句的使用。
第一:与(&&)
先看下面代码
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=6;
int b=7;
System.out.println((a==6)&&(b==7));
System.out.println((a==6)&&(b==8));
System.out.println((a==1)&&(b==8));
}
首先声明两个变量a和b 并且把6和7赋值给a和b 然后 打印出来的一定是true false false,与(&&)是判断的如果a 和b都为真 那么就是真,如果其
中之一为假 生成的boolea值为false
它的中文意思 你也可以这样理解且的意思 并且的意思,比如a=6&&b=7可以这样理解:a的值为6并且b的值为7或者再声明一个变量c=9;
如果代码写成这样:System.out.println((a==6)&&(b==7)&&(c==9)); 意思是a的值为6 并且b的值为7并且c的值为9满足
所有才会生成一个布尔值true,其中之一不满足就会生成一个布尔值false
第二:或(||)
先看下面代码:
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=6;
int b=7;
System.out.println((a==6)||(b==7));
System.out.println((a==6)||(b==8));
System.out.println((a==8)||(b==7));
System.out.println((a==9)||(b==9));
}
打印结果为true true true false
或的意思是只要其中一个符合 那么生成的布尔值便为true
第三:非(!)
首先看下面代码:
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int a=6;
int b=7;
System.out.println(a!=6);
System.out.println(a!=12);
System.out.println(b!=7);
System.out.println(b!=90);
}
}
打印结果是
false
true
false
true
非的意思是和实实不符比如a实际上值为6那么我说a的值不是6 我就可以用java代码说a!=6 我说错了 程序就会给返回一个false的布尔值
现在说说 位运算符
&&是短路运算符,&是非短路运算符 区别 例如 表达式A && B 如果A返回为false, 该表达式会直接返回false ,将不会再 对B做判断,而&则无论A为什么结果都会去对B进行判断。 || 与 |的区别和上面一样,所以从效率上来讲短路运算符的效率要高于非短路运算符网上也有人这样解释我感觉非常合适:
位运算符: 包括:1。&位与符 2。|位或符 3。^位异或符 4。~位取反符 以操作数12为例。位运算符将数字12视为1100。位运算符将操作数视为位而不是数值。数值 可以是任意进制的:十进制、八进制或十六进制。位运算符则将操作数转化为二进制,并相应地返回1或0。 位运算符将数字视为二进制值,并按位进行相应运算,运算完成后再重新转换为数字。例如: 表达式10&15表示(1010 & 1111),它将返回表示1010的值10。因为真真得真,或者是11得1,同位全是1结果也是1 表达式10|15表示(1010 | 1111),它将返回表示1111的值15。假假得假。全零得零。 表达式10^15表示(1010 ^ 1111), 它将返回表示0101的值5。此时是同性相斥,相同的就为假。 表达式~10表示(~1010),它将返回表示0101的值 -11。此号好理解,按位取反
我的博客www.taomaipin.com
- java入门学习(十一)逻辑运算符和位运算符
- Java学习基础:运算符和表达式(算数运算、关系运算、逻辑运算、位运算、条件运算、赋值运算)
- c++位运算和逻辑运算(&&和||:逻辑运算符;&和|:按位运算符)
- java学习笔记(一)----位运算符与逻辑运算符
- Java逻辑运算符和位运算符详解
- java的逻辑运算符和位运算符
- Java逻辑运算符和位运算符详解
- java中的逻辑运算符和位运算符
- java逻辑运算符位运算符总结
- 位运算符和逻辑运算符
- 逻辑运算符和位运算符
- 逻辑运算符和位运算符
- Java中的位运算符与逻辑运算符的区别(&和&&,|和||)
- java 位运算符 位逻辑运算符 和 移位运算符
- Java学习-算术运算符-赋值运算符-逻辑运算符-位运算符
- Java 逻辑运算符、按位运算符、移位运算符
- java学习06--比较运算符和逻辑运算符
- 【Java学习笔记】移位运算符和逻辑运算符
- cvCopy与cvCloneImage的区别
- Serializable和Parcelable实现序列化
- 傅立叶变换及应用1-傅立叶级数
- cmd.exe
- STL常用函数小结
- java入门学习(十一)逻辑运算符和位运算符
- accept()返回fd和listen fd的端口是一样吗
- hdu 4627 The Unsolvable Problem (数论)
- hdu--1710Binary Tree Traversals
- shared_ptr 实现
- Android对象序列化(Activity之间传递对象,Parcelable小例子)
- linux下Makefile文件的总结
- 2440开发板linux系统移植3G拨号上网收发短信(一)
- hdu 4631 Sad Love Story (暴力set+剪枝)