不要重新发明轮子,而是使用collection(如果允许使用java8,则使用Lambdas)How ??:将列表保留为字符串,但使用Anonymous
比较器 ,在其中将字符串解析为日期,对其进行比较,然后就可以使用它了。这是一个片段:
List<String> l = new ArrayList<String>();l.add("8:00 am");l.add("8:32 am");l.add("8:10 am");l.add("1:00 pm");l.add("3:00 pm");l.add("2:00 pm");Collections.sort(l, new Comparator<String>() { @Override public int compare(String o1, String o2) { try { return new SimpleDateFormat("hh:mm a").parse(o1).compareTo(new SimpleDateFormat("hh:mm a").parse(o2)); } catch (ParseException e) { return 0; } } }); System.out.println(l);


