java描述学生
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了java描述学生,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1890字,纯文字阅读大概需要3分钟。
内容图文
![java描述学生](/upload/InfoBanner/zyjiaocheng/1054/6bd2634d6dc9434bac38d3987c4150b1.jpg)
/** 描述学生,每一个学生都有一个归属地 学生Student 地址String类 学生属性:姓名,年龄 注意:姓名和年龄相同为同一个人 需求: 排除重复的学生,获取学生和其地址。 */ import java.util.*; class Student implements Comparable<Student>{//要实现该接口,如果不实现,放在二叉树里会报错 private String name; private int age; Student(String name,int age){ this.name = name; this.age = age; } //防止出现对象放在二叉树集合时的情况 public int compareTo(Student t){ int num = new Integer(this.age).compareTo(new Integer(t.age)); if(num==0) return this.name.compareTo(t.name); return num; } //因为要判断排除重复的学生,学生唯一性是有姓名和年龄组成 public int hashCode(){ return name.hashCode()+age*3; } //复写判断方法 public boolean equals(Object obj){ //判断,如果传入的不是学生类,抛出异常。因为需求是要学生和学生比 if(!(obj instanceof Student)) throw new ClassCastException("不是学生类!"); Student st = (Student)obj;//向下转型 return this.name==st.name && this.age == st.age; } public String getName(){ return name; } public int getAge(){ return age; } //加上这一句不在打印hash值 public String toString(){ return "学生姓名:" + name + ",年龄:" + age; } } class MapTest{ public static void main(String[]args){ HashMap<Student,String> hm = new HashMap<Student,String>(); hm.put(new Student("李四1", 21),"北京1"); hm.put(new Student("李四1", 21),"北京5"); hm.put(new Student("李四2", 22),"北京2"); hm.put(new Student("李四3", 23),"北京3"); hm.put(new Student("李四4", 24),"北京4"); //2种取出方式 keySet方式 Set<Student> key = hm.keySet(); Iterator<Student> it = key.iterator(); while(it.hasNext()){ Student stu = it.next(); String addr =hm.get(stu); System.out.println(stu + ",地址:"+addr); } //entrySet方式 Set<Map.Entry<Student,String>> me = hm.entrySet(); Iterator<Map.Entry<Student,String>> iter = me.iterator(); while(iter.hasNext()){ Map.Entry<Student,String> me1 = iter.next(); Student stu = me1.getKey(); String addr = me1.getValue(); System.out.println(stu + ",地址:"+addr); } } }
本文出自 “司马囧” 博客,转载请与作者联系!
原文:http://9274590.blog.51cto.com/9264590/1699915
内容总结
以上是互联网集市为您收集整理的java描述学生全部内容,希望文章能够帮你解决java描述学生所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
来源:【匿名】