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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

让我来回答一下吧!
回复 使用道具 举报
加油啊啊啊啊
回复 使用道具 举报
领题来做。。。。。。提升技术
回复 使用道具 举报
领个题试试。。。【数字君】
回复 使用道具 举报
新手也来试试手
回复 使用道具 举报
领题,看看自己的水平
回复 使用道具 举报
pkdo0 发表于 2015-3-24 01:05
代码写好了,请阳哥鉴定,第一次提交题目,如果有格式问题请阳哥多包涵另外给点技术分吧,第一次啊,阳哥
...

正确:
  1. import java.util.ArrayList;
  2. import java.util.Collections;
  3. import java.util.Comparator;
  4. import java.util.Iterator;



  5. public class Sort {

  6.         public static class User
  7.         {
  8.                  String name;
  9.                  int age;
  10.                  
  11.                  public User(String name,int age)
  12.                  {
  13.                          this.name=name;
  14.                          this.age=age;
  15.                  }
  16.                  public int getAge()
  17.                  {
  18.                          return age;
  19.                  }
  20.                  public void setAge(int age)
  21.                  {
  22.                          this.age = age;
  23.                  }
  24.                  public String getName()
  25.                  {
  26.                          return name;
  27.                  }
  28.                  public void setName(String name)
  29.                  {
  30.                          this.name = name;
  31.                  }
  32.                  
  33.                 //重写toString实现打印User类对象
  34.                  public String toString()
  35.                  {  
  36.                         return "("+name+", "+age+")";  
  37.                  }  
  38.         }
  39.        
  40.         //实现user之间根据年龄比较大小的类
  41.         public static class UserComparator implements Comparator
  42.         {
  43.                  public int compare(Object arg0, Object arg1)
  44.                  {
  45.                          User user0=(User)arg0;
  46.                          User user1=(User)arg1;
  47.                          return user1.getAge()-user0.getAge();
  48.                  }
  49.         }
  50.        
  51.        
  52.         public static void main(String[] arg)
  53.         {
  54.                 ArrayList<User> userLists = new ArrayList<User>();
  55.                 User u1 = new User("a",15);
  56.                 User u2 = new User("b",19);
  57.                 User u3 = new User("c",12);
  58.                 User u4 = new User("d",7);
  59.                 userLists.add(u1);
  60.                 userLists.add(u2);
  61.                 userLists.add(u3);
  62.                 userLists.add(u4);
  63.                
  64.                 UserComparator comparator = new UserComparator();
  65.                 Collections.sort(userLists, comparator);
  66.                
  67.                 Iterator<User> it = userLists.iterator();  
  68.         while(it.hasNext())  
  69.         {  
  70.             System.out.println(it.next());  
  71.         }  
  72.         }
  73. }
复制代码
回复 使用道具 举报
liyanghml 发表于 2015-3-24 07:02
看看 我现在到什么程度了

正确:

  1. //已知User类,该类有name(String类型)和age(int类型)两个属性,
  2. //请编写代码实现给ArrayList<User>排序,要求按照User对象的age的倒序排序。

  3. import java.util.*;

  4. public class UserDemo
  5. {
  6.         public static void main(String []args)
  7.         {
  8.                 List<User> UserList = new ArrayList<User>();
  9.                   UserList.add(new User("张三", 17));
  10.                   UserList.add(new User("李四", 20));
  11.                   UserList.add(new User("王五", 23));
  12.                   UserList.add(new User("赵六", 17));

  13.                   Collections.sort(UserList,new ageSort());
  14.                   for(User u : UserList)
  15.                   {
  16.                          System.out.println(u.getName()+"::"+u.getAge());
  17.                   }
  18.         }
  19. }
  20. class ageSort implements Comparator<User>
  21. {
  22.         public int compare(User u1,User u2)
  23.         {
  24.                 if(u1.getAge()==u2.getAge())
  25.                         return u1.getName().compareTo(u2.getName());
  26.                 if(u1.getAge()>u2.getAge())
  27.                         return -1;
  28.                 return 1;
  29.         }
  30. }

  31. //创建user类
  32. class User
  33. {
  34.         private String name;
  35.         private int age;
  36.         User(String name,int age)
  37.         {
  38.                 this.name = name;
  39.                 this.age = age;
  40.         }
  41.         public String getName()
  42.         {
  43.                 return this.name;
  44.         }
  45.         public int getAge()
  46.         {
  47.                 return this.age;
  48.         }
  49. }
复制代码
回复 使用道具 举报

正确:
  1. import java.util.ArrayList;
  2. import java.util.Collections;
  3. import java.util.Comparator;


  4. class User{
  5.         String name;
  6.         int age;
  7.         public User(String name, int age)
  8.         {
  9.                 this.name = name;
  10.                 this.age = age;
  11.         }
  12.         static void display(ArrayList<User> list)
  13.         {
  14.                 for(User user:list)
  15.                 {
  16.                         System.out.println(user.age + ":" + user.name);
  17.                 }
  18.         }
  19. }

  20. class MyComparator implements Comparator<User>
  21. {
  22.         public int compare(User stu1, User stu2)
  23.         {
  24.                 if(stu1.age < stu2.age)
  25.                 {
  26.                         return 1;
  27.                 }
  28.                
  29.                 if(stu1.age == stu2.age)
  30.                 {
  31.                         return 0;
  32.                 }
  33.                
  34.                 if(stu1.age > stu2.age)
  35.                 {
  36.                         return -1;
  37.                 }
  38.                 return 0;
  39.         }
  40. }

  41. public class Test_03_23 {

  42.         public static void main(String[] args) {
  43.                 MyComparator comparator = new MyComparator();
  44.                 ArrayList<User> myList = new ArrayList<User>();
  45.                 myList.add(new User("Tom", 18));
  46.                 myList.add(new User("May", 50));
  47.                 myList.add(new User("Mike", 40));
  48.                 myList.add(new User("Jack", 17));
  49.                 Collections.sort(myList, comparator);
  50.                 User.display(myList);
  51.                
  52.         }

  53. }
复制代码
回复 使用道具 举报
谢谢版主的加分题!!!
回复 使用道具 举报
领题来了,谢谢
回复 使用道具 举报
求技术分
回复 使用道具 举报
新手来看看什么题,:lol
回复 使用道具 举报
阳哥请看

Test1.zip

820 Bytes, 阅读权限: 100, 下载次数: 1

回复 使用道具 举报
请阳哥检阅

result of UserSort.jpg (62.39 KB, 下载次数: 25)

运行结果

运行结果

UserSort.rar

972 Bytes, 阅读权限: 150, 下载次数: 0

回复 使用道具 举报
领题学习,赚技术分
回复 使用道具 举报
我是初学菜鸟,先来看看题目,留待日后练习提升
回复 使用道具 举报
回复一个领题
回复 使用道具 举报
拿题换分
回复 使用道具 举报
老师,能不能帮我看看33,32期我提交的答案啊~尤其是32期百度的题,想了一晚上,不知道对不对。。
33期:http://bbs.itheima.com/forum.php ... ;page=19#pid1286369
32期:http://bbs.itheima.com/forum.php ... ;page=17#pid1289743
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马