[转帖]java关系运算符_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1973 | 回复: 0   主题: [转帖]java关系运算符        下一篇 
wongz
注册用户
等级:新兵
经验:46
发帖:55
精华:0
注册:2011-8-6
状态:离线
发送短消息息给wongz 加好友    发送短消息息给wongz 发消息
发表于: IP:您无权察看 2014-12-24 15:12:09 | [全部帖] [楼主帖] 楼主

关系运算符

通过关系运算符计算的结果是一个boolean类型值。对于应用关系运算符的表达式,计算机将来判断运算对象之间的通过关系运算符指定的关系是否成立,若成立则表达式的返回值为true,否则为false。

关系运算符包括>(大于)、<(小于)、>=(大于或等于)、<=(小于或等于)、==(等于)和!=(不等于)。其中等于和不等于运算符适用于引用类型和所有的基本数据类型,而其他的关系运算符只适用于除boolean类型外的所有基本数据类型。

Java中的关系运算符可通过表1表示。

北京联动北方科技有限公司

表1  Java中的关系运算符

关系运算符中的“>”、“<”、“>=”、“<=”运算符的应用相对比较简单,这里不再介绍,下面介绍“==”与“!=”运算符。

“==”与“!=”适用于所有的对象,但初学Java语言的读者经常会对“==”的用法感到迷惑,另外无法分清“==”与对象的equals()方法的区别,下面就分别来介绍运算符“==”与equals()方法的比较规则,并进行比较。

1.“==”运算符

l         比较基本数据类型变量

当两个基本数据类型的操作元通过“= =”运算符比较是否相等时,比较的是这两个操作元的值是否相等,若相等结果为true,否则为false,在比较时不考虑操作元的数据类型。

例如:

int i=98;

int j=-98;

float f=98.0f;

System.out.println(i==j);                     //输出结果为: false

System.out.println(i==f);                     //输出结果为: true

System.out.println(i=='b');                          //输出结果为: true

System.out.println(j==-'b');                        //输出结果为: true

l         比较引用类型变量

当两个引用类型的变量通过“==”运算符比较是否相等时,比较的是这两个变量是否引用了同一个对象,若是结果为true,否则为false。

例如:

Integer num1 = new Integer(100);              //创建一个Integer对象, 并通过num1变量进行引用

Integer num2 = new Integer(100);              //创建另一个Integer对象, 并通过num2变量进行引用

System.out.println((num1==num2);            //输出结果为: false

System.out.println(num1!=num2);              //输出结果为: true

代码中虽然变量num1与num2引用的Integer对象的值都为100,但它们却是两个不同的对象,所以表达式“num1==num2”进行比较的结果为false。

下面将以上代码进行修改:

Integer num1 = new Integer(100);

Integer num2 = new Integer(200);

num1=num2;                             //将num2引用的对象赋值给num1, 使得这两个变量引用同一个对象

System.out.println(num1==num2);                     //输出结果为: true

System.out.println(num1!=num2);                     //输出结果为: false

下面通过“==”运算符向读者介绍Java包装类的自动装箱与拆箱的相关知识。先来看下面的代码:

Integer num1=280;                                    //将自动进行280转换为Intege对象的装箱操作

Integer num2=280;                                    //将自动进行280转换为Intege对象的装箱操

--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论