为了账号安全,请及时绑定邮箱和手机立即绑定

compareTo()方法报错

public int compareTo(Student o) {
		// TODO Auto-generated method stub			
		return this.getId().compareTo(o.getId());//返回0 ,负整数、正整数
	}
报错:Cannot invoke compareTo(int) on the primitive type int


正在回答

2 回答

最后,我是这么实现的:compareTo()方法比较的字符串类型是否相等,而我一开始把id设置成int型,

所以在里面判断语句,返回-1,0,1同样可以达到效果。代码如下:

@Override
	public int compareTo(Student o) {
		// TODO Auto-generated method stub
		//当前的id和比较参数的id比较
		int set;
		if(this.getId()==o.getId()){
			set =0;
		}else if(this.getId()<o.getId()){
			set =-1;
		}else{
			set = 1;
		}
		return set;//返回-1,0,1


0 回复 有任何疑惑可以回复我~
#1

慕粉3230801

直接 return this.getId()-o.getId(); 不就可以了?
2017-07-11 回复 有任何疑惑可以回复我~
#2

qq_大灰狼_jvJK27 回复 慕粉3230801

66,可以啊,机智
2018-10-10 回复 有任何疑惑可以回复我~
#3

qq_蓝紀_0 回复 qq_大灰狼_jvJK27

为什么这样就可以了?
2018-12-19 回复 有任何疑惑可以回复我~

他这个比较的String类型的    int类型的比较会报错

0 回复 有任何疑惑可以回复我~
#1

小光头 提问者

那int类型该怎么比较
2017-07-10 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

compareTo()方法报错

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信