A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈少文 中级黑马   /  2012-8-11 21:48  /  2448 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

String s1 = "abc";
String s2 = "abcde";
int num = new Integer(s1.length()).compareTo(new Integer(s2.length()));

帮忙看一下,这里的new Integer()  是什么意思。为什么要用new Integer().
当用compareTo时,x.compareTo(y)  x,y是需要是什么数据类型  

评分

参与人数 1技术分 +1 收起 理由
张立江 + 1 赞一个!

查看全部评分

6 个回复

倒序浏览
compareTo比较的是此对象与指定对象的顺序。如果该对象小于、等于或大于指定对象,则分别返回负整数、零或正整数。
s1.length()返回的是字符串的长度是整型的,需要把他们用基本数据类型类包装类转换成对象,才能用compareTo比较

评分

参与人数 1技术分 +1 收起 理由
张立江 + 1 赞一个!

查看全部评分

回复 使用道具 举报
本帖最后由 郑正华 于 2012-8-11 22:05 编辑

因为这是一个通用的接口,所以定义方法时是比较当前对象与待比较对象是否相等,由于该通用接口不可能知道你要比较的具体对象类型,所以这里需要的一个参数类型是Object。
int num = new Integer(s1.length()).compareTo(new Integer(s2.length()));
这行代码是得到s1和s2的长度,然后将这两个长度封装成对象,然后用compareTo方法对两个对象进行比较!

评分

参与人数 1技术分 +1 收起 理由
张立江 + 1 赞一个!

查看全部评分

回复 使用道具 举报
String s1 = "abc";
String s2 = "abcde";
int num = new Integer(s1.length()).compareTo(new Integer(s2.length()));

帮忙看一下,这里的new Integer()  是什么意思。为什么要用new Integer().
new Integer(x) x是基本类型数据,是将基本类型数据转换成引用类型,可以被对象使用和操作
compareTo方法是对对象进行操作,所以必须将基本类型数据转换成引用类型,才可以使用compareTo方法


当用compareTo时,x.compareTo(y)  x,y是需要是什么数据类型  
compareTo是Compareable接口的一个方法,主要用于判断创建对象的大小关系,该对象要实现compareable接口
x和y的类型,要看你要对什么类型对象进行处理,一般用的最多的是String,
因为String类型已经实现了compareTo()方法,可以直接用。



评分

参与人数 1技术分 +1 收起 理由
张立江 + 1 赞一个!

查看全部评分

回复 使用道具 举报
在Integer中要传Integer;如果实现comparable中的comparetor的方法时要看泛型限定了!下面是图片!希望对你有帮助!

a.jpg (42.38 KB, 下载次数: 59)

a.jpg

`D6ILYF2%`G9(4WZ1SUXNIJ.jpg (21.68 KB, 下载次数: 54)

`D6ILYF2%`G9(4WZ1SUXNIJ.jpg
回复 使用道具 举报
new Integer()的意思是将基本数据类型转成引用数据类型。因为compareTo要对对象进行操作,所以使用new Integer()。
compareTo()中x,y常见参数是String类型。
再给楼主说一个,compareTo传入String类型的时候,返回的值是按照前者跟后者在ASCII表里面相减的值。比如前者是c,后者是a,        c是99,a是97.相减得2.返回值就是2.
回复 使用道具 举报
new Integer()的意思是将基本数据类型转成引用数据类型。因为compareTo要对对象进行操作,所以使用new Integer()。
compareTo()中x,y常见参数是String类型。
再给楼主说一个,compareTo传入String类型的时候,返回的值是按照前者跟后者在ASCII表里面相减的值。比如前者是c,后者是a,        c是99,a是97.相减得2.返回值就是2.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马