zoukankan      html  css  js  c++  java
  • 在深圳的面试

    传入一个List<User> 对象 根据User的Date 类型 birthday属性降序排序

    方法1(常见的冒泡法):

    private static Map getUsersMap2(List<User> list) {
            Map map = new HashMap();
            List<User> result = new ArrayList<User>();
    
            for (int i = 0; i < list.size(); i++) {
                User user = list.get(i);
                for (int j = 0; j < list.size(); j++) {
                    if (user.getBirthday().getTime() > list.get(j).getBirthday().getTime()) {
                        user = list.get(j);
                    }
                }
                result.add(user);
                list.remove(user);
    
            }
            result.add(list.get(0));
                 map.put("classId", result);
            return map;
        }

     方法2(利用Collections.sort()方法自定义比较规则):

    private static Map getUsersMap(List<User> list) {
            Map map = new HashMap();
            // List<User> result = new ArrayList<User>();
            Comparator<User> com = new Comparator<User>() {
                public int compare(User o1, User o2) {
                    return o1.getBirthday().compareTo(o2.getBirthday());//可以将日期类型直接转换成字符串直接比较ASCII码
            //当int  < 0    则   o1 < o2;   
          // int = 0 o1 = o2;
          // int > 0 o1 > o2;

    } }; Collections.sort(list, com); System.out.println(list); map.put("v", list); return map; }

     另附(格式化日期函数的使用):

    public static void main(String[] args) throws ParseException {
            /* DateFormat df = DateFormat.getDateInstance(DateFormat.LONG, Locale.JAPANESE);
              不知道是哪一种格式时可以这么做
              System.out.println(df.format(new Date()));
            Date date1 = df.parse("2014/09/16");
            Date date2 = df.parse("2014/09/15");
            Date date3 = df.parse("2014/09/14");*/


    User user1 = new User(1, "zhangsan", "2014/09/16"); User user2 = new User(2, "lisi", "2014/09/17"); User user3 = new User(2, "lisi", "2014/09/14"); List<User> list = new ArrayList<User>(); list.add(user1); list.add(user2); list.add(user3); System.out.println(getUsersMap(list)); }
  • 相关阅读:
    明明已经include_once() 但还是报错Class 'XXXXXControllerTOPData' not found
    dell U2515H 2k显示器黑屏问题,dp线问题。
    centos7.4 php5升级到php7
    thinkphp批量插入 更新sql
    查询速度慢了10倍,查询条件类型不对,字符串当做数字类型。
    margin-left:auto;margin-right:auto; 不起作用的原因
    jquery 查找元素,id,class
    php分割url,获取参数query
    阿里云服务器删除日志的方法,查看有哪些大文件
    sql优化 分字段统计查询
  • 原文地址:https://www.cnblogs.com/sallet/p/3976073.html
Copyright © 2011-2022 走看看