List<CiFormat> returns = new ArrayList<CiFormat>(); CiFormat cf_1 = new CiFormat(66,"可恶"); returns.add(cf_1); CiFormat cf_2 = new CiFormat(99,"饿恶"); returns.add(cf_2); CiFormat cf_3 = new CiFormat(123,"看恶"); returns.add(cf_3); CiFormat cf_4 = new CiFormat(11,"看看人"); returns.add(cf_4); Collections.sort(returns, new SortByFrq()); for (int i = 0;i< returns.size();i++) { Log.d(tag, returns.get(i).getFrq()+"__"+returns.get(i).getCi()); }
结果:
123__看恶
99__饿恶
66__可恶
11_看看人
其中用的的内和方法
ZiCiFormat.java
class CiFormat{// (frq,ci_content) private int frq; public int getFrq() { return frq; } public void setFrq(int frq) { this.frq = frq; } private String ci; public String getCi() { return ci; } public void setCi(String ci) { this.ci = ci; } public CiFormat(int frq,String ci){ this.frq = frq; this.ci = ci; } } class SortByFrq implements Comparator { public int compare(Object o1, Object o2) { CiFormat s1 = (CiFormat) o1; CiFormat s2 = (CiFormat) o2; if (s1.getFrq() < s2.getFrq()) return 1; else if (s1.getFrq() == s2.getFrq()) { return 0; } return -1; } }
相关推荐
同时,随着 Java 8 及更高版本的引入,流API也提供了新的排序方式,开发者可以根据项目需求选择最适合的方法。在 `MySortList.java` 文件中,可能包含了关于 `Collections.sort()` 方法的具体使用示例,而 `Java.jpg...
在Java编程中,`List`接口是集合框架的重要组成部分,提供了有序的元素存储。当我们需要对List中的元素进行排序时,`Collections.sort()`方法就派上了用场。这个方法能够根据元素的自然顺序或者自定义的比较器进行...
TreeSet内部使用红黑树数据结构,保证元素有序。添加元素(add)时会自动排序,同时提供了lower/upper/greatest/lesser等方法来处理有序集合的边界元素。 五、Map接口 Map接口与List和Set不同,它用于存储键值对。...
TreeMap是Java中实现Map接口的一个类,它内部使用红黑树数据结构,可以按照键或值自然排序。如果我们要根据值排序,可以在创建TreeMap时提供一个自定义的比较器,比较器的compare方法根据值进行比较。例如: ```...
List接口是Java集合框架中的核心接口之一,它继承自Collection接口,并具有特定的特性:元素可以重复,保持元素的顺序,并允许对元素的位置进行精确控制。List接口有多个实现类,包括ArrayList、LinkedList、Vector...
java 中List按照date排序的实现 Java 中List按照date排序的实现是Java开发中一个常见的需求,特别是在处理日期类型的数据时SORT。今天,我们将介绍如何使用Java中的Collections类和Comparator接口对List按照date...
在Java编程语言中,列表(List)是一种常用的数据结构,用于存储有序的元素集合。本文将深入探讨如何从List对象中获取数据,包括使用不同类型的List实现以及从List中提取特定值的方法。我们将通过示例代码来理解这些...
在Java编程语言中,对中文字符串进行排序是一个相对复杂的问题,因为中文字符的排序不能简单地按照Unicode编码顺序来处理。通常,我们需要考虑汉字的拼音或者笔画等属性来进行排序。这里我们将详细介绍如何使用`...
根据提供的文件信息,我们可以深入探讨《Java泛型与集合》这本书中的关键知识点。该书由Maurice Naftalin和Philip Wadler合著,并于2007年由O'Reilly Media出版。以下是对该书内容的一个综合概述,旨在帮助读者理解...
### Java集合排序及java集合类详解 #### 集合框架概述 集合是Java编程语言中非常核心且广泛使用的部分,对于深入理解和高效使用Java语言至关重要。本文将围绕Java集合框架进行详细介绍,包括Collection、List、Set...
- `TreeSet`:基于红黑树实现,保持元素排序,支持快速的排序和查找。 - `HashMap`:存储键值对的哈希表,快速查找、添加和删除元素。 - `TreeMap`:基于红黑树实现的键值对存储,保持键的排序。 3. **泛型**:...
- **Lambda表达式**:流操作常与Lambda表达式结合使用,简化代码,如`list.stream().filter(x -> x > 10).forEach(System.out::println);` - **方法引用来代替匿名内部类**:`System.out::println`是方法引用,...
输出示例可能是: | a | ->| b | ->| g | ->| x | ->| z |目的是要有一个可以使用所有可比较元素的列表。测验深入测试您的实施。 尝试极端情况。 测试所有方法= 100%代码覆盖率。 您的实现必须注意错误处理。 此外...
如果需要保持元素排序,可以选择TreeSet。 ```java Integer[] array = {5, 3, 1, 2, 4, 3, 2}; TreeSet<Integer> treeSet = new TreeSet<>(Arrays.asList(array)); array = treeSet.toArray(new Integer[0]); ``` ...
int sum = list.stream().filter(n -> n % 2 == 0).mapToInt(Integer::intValue).sum(); ``` 这里的关键是理解如何将集合转换为Stream对象,并应用各种操作来完成所需的任务。 ##### 1.2 Stream创建 创建Stream...
- `sorted(Comparator comparator)`:对流中的元素排序。 - **终止操作**: - `forEach(Consumer action)`:遍历流中的每个元素。 - `collect(Collector collector)`:收集流中的元素,转换为其他形式。 ##### ...
PriorityQueue是一个优先队列,根据元素的自然顺序或自定义比较器进行排序。 Map接口存储键值对,如HashMap、LinkedHashMap和TreeMap。HashMap快速查找,但不保证元素顺序;LinkedHashMap保持插入顺序或访问顺序;...
TreeSet内部使用红黑树结构,元素排序有序,但插入和查找性能稍逊于HashSet。 Map接口用于存储键值对,HashMap是最常用的实现,它提供了快速的查找和插入操作,但不保证元素顺序;TreeMap则基于红黑树,保持键的...
list.sort((x, y) -> x.compareTo(y)); ``` 这里使用 Lambda 表达式作为 `sort` 方法的参数,实现了列表的排序。 **实例2:两个泛型:** ```java List<String> list = Arrays.asList("a", "b", "c"); Map, Integer>...
在Java编程中,对List集合中的对象进行多属性排序是一项常见的任务。这通常涉及到自定义比较逻辑,以满足复杂的数据排序需求。在这个“java版本List中对象多属性排序.rar”压缩包中,我们可能找到了一个关于如何在...