已有101人关注
Java从入门到精通 第264页 第14章 14.4Set集合 例14.4
发表在Java图书答疑 2017-05-12
是否精华
版块置顶:

stu.getId() 为什么不是 创建Stu时的 01011,01021,01051,01012  结果却是 521,522,529,553呢

在方法public long getId中的return确实是 id啊



原码如下


/*

 * Java P264页

 */

import java.util.*;



public class UpdateStu implements Comparable<Object> {

String name;

long id;

public UpdateStu(String name, long id) {

this.id = id;

this.name = name;

}

//重写Comparable接口中的compareTo方法

public int compareTo(Object o) {

UpdateStu upstu = (UpdateStu) o;

int result = id > upstu.id ? 1 : (id == upstu.id ? 0 : -1);

return result;

}

//get set

public long getId() {

return id;

}

public void setId(long id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

//主函数

public static void main(String[] args) {

//创建stu对象

UpdateStu stu1 = new UpdateStu("李同学", 01011);

UpdateStu stu2 = new UpdateStu("陈同学", 01021);

UpdateStu stu3 = new UpdateStu("王同学", 01051);

UpdateStu stu4 = new UpdateStu("马同学", 01012);

TreeSet<UpdateStu> tree = new TreeSet<>();

//向集合中添加对象

tree.add(stu1);

tree.add(stu2);

tree.add(stu3);

tree.add(stu4);

Iterator<UpdateStu> it = tree.iterator();

//遍历集合

System.out.println("Set集合中的所有元素:");

while (it.hasNext()) {

UpdateStu stu = (UpdateStu) it.next();

System.out.println(stu.getId() + " " + stu.getName());

}


}

}

//运行结果是:

Set集合中的所有元素:

521 李同学

522 马同学

529 陈同学

553 王同学


2017-05-12 15:31:05编辑
分享到:
精彩评论 1
David
学分:914 LV7
TA的每日心情
最后的冲刺
2017-07-15 10:46:08
2017-05-12
沙发

以01011为例,常数为0打头的写法是指八进制的数,八进制的01011等于十进制的521。

首页上一页 1 下一页尾页 1 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照