Tag: 排序

根据运行时属性对对象列表进行排序

我有一个VO的arraylist。 这些对象具有许多属性和相应的get / set方法。 我想基于我将在运行时获得的属性对此数组列表进行排序。 让我详细解释一下。 我的VO是这样的 public class Employee { String name; String id; private String getName() { return name; } private String getId() { return id; } } 我将在运行时获得一个字符串’sortType’,它可以是’id’或’name’。 我想根据字符串的值对列表进行排序。 我试图一起使用比较器和reflection,但没有运气。 可能是我没有正确使用它。我不想使用if循环并创建新的比较器类。 还有其他想法吗? try catch应该在新类中。 这是工作代码。 如果你想为比较器使用一个单独的类,请在@ Bohemian的评论中找到它。 String sortType = “name”; // determined at runtime Collections.sort(results, new Comparator() { public int compare(Employee […]

Java中可排序的类似HashMap的数据结构?

Java中是否存在某种类似于可以按键或值排序的HashMap的数据结构? 在PHP中,您可以使用可排序的关联数组。 Java中有这样的东西吗?

根据Java中的值对地图进行排序的最简单方法是什么?

我希望我的哈希值根据值按降序排序。 我如何用Java做到这一点?

在哈希映射中获取前10个值

我试图找出如何从HashMap获得前10个值。 我最初尝试使用TreeMap并按值排序,然后取前10个值,但似乎这不是选项,因为TreeMap按键排序。 我想仍然能够知道哪些键具有最高值,映射的K, V是String, Integer 。

如何在hibernate中使用条件对列表进行排序

我是Spring3和Hibernate的新手,下面的代码工作得很好,但我试图找到一种方法让我的列表按日期字段按排序顺序返回。 有人可以告诉我如何添加排序到这段代码 // To get list of all articles @SuppressWarnings(“unchecked”) public List listFriends(String rUser) { Friend friend = new Friend(); friend.setUsername(rUser); return (List) sessionFactory.getCurrentSession() .createCriteria(Friend.class) .add(Example.create(friend)) .list(); }

MapReduce(二级)排序/过滤 – 如何?

我有一个聊天室webapp的不同“区域”的时间戳值(并发用户)的日志文件,格式为“Timestamp; Zone; Value”。 对于每个区域,每天每分钟存在一个值。 对于每个区域,我想列出每天的最大值,按此最大值排序desc 所以,一个输入文件 #timestamp; zone; value 2011-01-01 00:00:00; 1; 10 2011-01-01 00:00:00; 2; 22 2011-01-01 00:01:00; 1; 11 2011-01-01 00:01:00; 2; 21 2011-01-02 00:00:00; 1; 12 2011-01-02 00:00:00; 2; 20 应该为1区生产: 2011-01-02 12 2011-01-01 11 对于2区: 2011-01-01 22 2011-01-02 20 我该如何处理? 恕我直言,我需要一个以上的M / R步骤。 到目前为止我实施的是: 收集文本键“YYYY-MM-DD / Zone”和IntWritable值“value”的映射器,以及 减速器,用于标识每个键的最大值(即每个区域每天)。 这导致文件像 2011-01-01/1 11 […]

使用Collections.sort对自定义类数组列表字符串进行排序

我试图通过声明我自己的匿名比较器使用Collections.sort对我的自定义类数组列表进行排序。 但这种方式并没有按预期运作。 我的代码是 Collections.sort(arrlstContacts, new Comparator() { public int compare(Contacts lhs, Contacts rhs) { int result = lhs.Name.compareTo(rhs.Name); if(result > 0) { return 1; } else if (result < 0) { return -1; } else { return 0; } } }); 结果不是按排序顺序排列的。

如何告诉oracle按照从java传入的特定排序顺序进行排序?

这就是我需要做的事情。 我在java中有一个List,我可以将其转换为逗号单独的ID字符串,如此“3,4,5,6,1,2” 我想知道是否有办法将该字符串传递给oracle并根据该字符串的排序顺序进行sql代码排序? 所以这个查询: select t.id from t_test t 会导致这个订单 ID 3 4 5 6 1 2

Java按值排序HashMap

我有这个HashMap: HashMap m 它基本上存储任何单词(String)及其频率(整数)。 以下代码按值排序HashMap: public static Map sortByValue(Map map) { List<Map.Entry> list = new LinkedList<Map.Entry>(map.entrySet()); Collections.sort(list, new Comparator<Map.Entry>() { public int compare(Map.Entry m1, Map.Entry m2) { return (m2.getValue()).compareTo(m1.getValue()); } }); Map result = new LinkedHashMap(); for (Map.Entry entry : list) { result.put(entry.getKey(), entry.getValue()); } return result; } 现在情况已经改变,我有这个: HashMap; class doc{ integer freq; HashMap; […]

Arrays.sort()会增加时间复杂度和时空复杂度吗?

存在与arrays相关的问题,要求时间复杂度为O(n)且空间复杂度为O(1)。 如果我使用Arrays.sort(arr) ,并使用for循环到一个传递循环,例如: public static int hello(int[]A){ Arrays.sort(A); for(int i=0;i<A.length;i++){ ……………….. } return ….; } 因此循环将花费O(n)时间。 我的问题是: Arrays.sort()花费更多时间吗? 如果我使用Arrays.sort() ,这次复杂性仍然是O(n)吗? 并且Arrays.sort()花费更多空间吗?