Collections.sort

xiaoxiao2021-02-28  89

Collections.sort进行排序 User user = new User(); user.setUserName("zhangsan"); user.setUserId("111"); user.setIndex(0); User user1 = new User(); user1.setUserName("lisi"); user1.setUserId("222"); user1.setIndex(1); User user2 = new User(); user2.setUserName("wangwu"); user2.setUserId("333"); user2.setIndex(2); List list = new ArrayList(); list.add(user2); list.add(user1); list.add(user); Collections.sort(list,new Comparator<User>(){ @Override public int compare(User o1, User o2) { if(o1.getIndex()>o2.getIndex()){ return 1; }else if(o1.getIndex()<o2.getIndex()){ return -1; } return 0; } }); for(Iterator it = list.iterator();it.hasNext();){ Object obj = it.next(); if(obj instanceof User){ User u = (User) obj; System.out.println(u.getUserName()); } }

重写Comparator接口的compare方法

一般是在类中定义一个内部类

static class IntegerComparator implements Comparator{ @Override public int compare(Object o1, Object o2) { return Integer.valueOf(o1.toString()).compareTo(Integer.valueOf(o2.toString())); } }然后在使用的时候直接这样使用

Collections.sort(list,new IntegerComparator());就可以了

转载请注明原文地址: https://www.6miu.com/read-64570.html

最新回复(0)