ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Java实验四

2021-01-19 21:02:44  阅读:271  来源: 互联网

标签:return name int Person 实验 Java public card


一、创建Person类
1 public class Person {//应该卸载Test里面 2 private int card ;//身份证号 3 private String name;//姓名 4 private int age;//年龄 5 public Person() { 6 super(); 7 } 8 public Person(int card, String name, int age) { 9 super(); 10 this.card = card; 11 this.name = name; 12 this.age = age; 13 } 14 public int getCard() { 15 return card; 16 } 17 public void setCard(int card) { 18 this.card = card; 19 } 20 public String getName() { 21 return name; 22 } 23 public void setName(String name) { 24 this.name = name; 25 } 26 public int getAge() { 27 return age; 28 } 29 public void setAge(int age) { 30 this.age = age; 31 } 32 @Override 33 public String toString() { 34 return "Person [card=" + card + ", name=" + name + ", age=" + age + "]"; 35 } 36 @Override 37 public int hashCode() { 38 final int prime = 31; 39 int result = 1; 40 result = prime * result + age; 41 result = prime * result + card; 42 result = prime * result + ((name == null) ? 0 : name.hashCode()); 43 return result; 44 } 45 @Override 46 public boolean equals(Object obj) { 47 if (this == obj) 48 return true; 49 if (obj == null) 50 return false; 51 if (getClass() != obj.getClass()) 52 return false; 53 Person other = (Person) obj; 54 if (age != other.age) 55 return false; 56 if (card != other.card) 57 return false; 58 if (name == null) { 59 if (other.name != null) 60 return false; 61 } else if (!name.equals(other.name)) 62 return false; 63 return true; 64 } 65 }

二、创建Test类

 1 package HomeWork0607;
 2 
 3 import java.util.ArrayList;
 4 import java.util.Collections;
 5 import java.util.Comparator;
 6 import java.util.List;
 7 
 8 public class ComparatorTest {
 9     public static void main(String[] args) {
10         Person person1 = new Person(1002,"小明",16);
11         Person person2 = new Person(1004,"小红",20);
12         Person person3 = new Person(1006,"小强",18);
13         Person person4 = new Person(1008,"小张",15);
14         List<Person> list = new ArrayList<>();
15         list.add(person1);
16         list.add(person2);
17         list.add(person3);
18         list.add(person4);
19         System.out.println("排序前:"+list);
20         System.out.println("=======按年龄比较大小=======");
21         Age age = new Age();
22         Collections.sort(list,age);
23         for (int i = 0; i < list.size(); i++) {
24             System.out.println(list.get(i));
25         }
26         
27         
28         System.out.println("======按身份证号比较大小======");
29         Card card = new Card();
30         Collections.sort(list,card);
31         for (int i = 0; i < list.size(); i++) {
32             System.out.println(list.get(i));
33         }
34         
35     }
36 }
37 
38 
39 class Card implements Comparator<Person>{
40 
41     @Override
42     public int compare(Person arg0, Person arg1) {
43         return arg0.getCard()-arg1.getCard();//从小到大排序
44     }
45 }
46 class Age implements Comparator<Person>{
47     public int compare(Person arg0, Person arg1) {
48         return arg0.getAge()-arg1.getAge();//从小到大排序
49     }
50 }

三、运行截图

标签:return,name,int,Person,实验,Java,public,card
来源: https://www.cnblogs.com/wjl1394270327/p/14299998.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有