Collections.sort方法可以对集合进行排序,它有两个参数arg0:要排序的集合;arg1:实现了比较接口的类。下面是具体代码:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
import org.apache.log4j.Logger;
public class LinkSort implements Comparator<LinkSort>{
Logger logger=Logger.getLogger(LinkSort.class);
public LinkSort(){
super();
}
public LinkSort(String key,String url,int linkCount){
this.key=key;
this.url=url;
this.linkCount=linkCount;
}
private String key;
private String url;
private int linkCount;
public int getLinkCount() {
return linkCount;
}
public void setLinkCount(int linkCount) {
this.linkCount = linkCount;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
/**
* 排序方法
* 根据点击次数进行排序 linkCount
* **/
@Override
public int compare(LinkSort arg0,LinkSort arg1){
if(arg0.getLinkCount()>=arg1.getLinkCount()){
return 0;
}else{
return 1;
}
}
/**
* 生成json格式
* @return String json 格式 {UserManager=/wmba/user/user_queryUserInfos.action}
**/
public String linkSortToJSON(List<LinkSort> list){
if(list.size()>0){
//排序
Collections.sort(list, new LinkSort());
StringBuffer sb=new StringBuffer();
sb.append("{");
for(LinkSort ls : list){
sb.append(ls.getKey()).append(":").append(ls.getUrl()).append(ls.getLinkCount()).append(",\n");
}
//去掉最后一个","号 并加上"}"
String temp=sb.toString().substring(0,sb.toString().length()-1)+"}";
logger.debug(temp);
return temp;
}
return "false";
}
public static void main(String[] args) {
List<LinkSort> list=new ArrayList<LinkSort>();
list.add(new LinkSort("en_US_link","/wmba/user/user_addUser2.action",3));
list.add(new LinkSort("en_US_link","/wmba/user/user_addUser1.action",6));
list.add(new LinkSort("en_US_link","/wmba/user/user_addUser3.action",1));
list.add(new LinkSort("en_US_link","/wmba/user/user_addUser4.action",2));
list.add(new LinkSort("en_US_link","/wmba/user/user_addUser5.action",5));
LinkSort linksort=new LinkSort();
System.out.println(linksort.linkSortToJSON(list));
}
}
最后输出:
{en_US_link:/wmba/user/user_addUser1.action6,
en_US_link:/wmba/user/user_addUser5.action5,
en_US_link:/wmba/user/user_addUser2.action3,
en_US_link:/wmba/user/user_addUser4.action2,
en_US_link:/wmba/user/user_addUser3.action1,}
分享到:
相关推荐
`Sort`方法通常与数组和列表等集合操作相关联,用于对元素进行升序排列。在C#中,有多种方式可以使用`Sort`方法: 1. 对于数组,可以使用`Array.Sort()`静态方法。例如: ```csharp int[] numbers = { 5, 2, 8, 1...
对于大型数据集,`Collections.sort()`通常能提供很好的性能,但如果需要对大量不可变对象或已排序的列表进行排序,使用`TreeSet`或`LinkedHashSet`等集合类型可能会更高效,因为它们在底层实现了红黑树结构,插入和...
使用 Collections.sort() 方法可以对 List 集合进行排序,然后使用 for-each 循环遍历集合输出元素。 集合框架是 Java 中非常重要的一部分,提供了多种数据结构和操作,可以满足不同的应用需求。熟悉集合框架的使用...
### Java常用方法集合 #### 一、`java.lang.*`包概述 `java.lang.*` 包含了Java语言中最基本且最常用的类,这些类是自动导入到每一个程序中的,因此无需显式地导入。它包括了如 `String`, `Integer`, `System`, `...
本文实例讲述了Go语言使用sort包对任意类型元素的集合进行排序的方法。分享给大家供大家参考。具体如下: 使用sort包的函数进行排序时,集合需要实现sort.Inteface接口,该接口中有三个方法: 代码如下:// Len is ...
在Python中,字符串、列表、字典和集合是四种基本的数据结构,它们提供了许多内置方法来操作数据。下面详细地介绍这些数据结构的方法和用法。 首先,我们来看字符串(String)的相关方法: 1. capitalize():将...
一种是使用`Collections.sort()`方法,它适用于`List`接口的实现,如`ArrayList`。例如: ```java List<Integer> numbers = new ArrayList(); // 添加元素... Collections.sort(numbers); ``` 另一种是通过实现`...
如果需要对对象数组进行排序,可以使用Arrays类的`sort()`方法,同样需要传递Comparator。 ```java MyObject[] array = ...; Arrays.sort(array, new Comparator() { @Override public int compare(MyObject o1, ...
最后,使用Collections.sort()方法对集合进行排序,并通过遍历ArrayList将结果输出到控制台。 ```java import java.util.*; public class Main { public static void main(String[] args) { Scanner scanner = ...
对于List,可以使用Collections.sort()方法进行排序,这个方法默认使用元素的自然顺序,如果元素是自定义对象,需要实现Comparable接口或者提供Comparator。对于Map,排序主要是针对其键进行,可以使用SortedMap接口...
Person类的例子中,我们可以使用Collections的`sort()`方法对列表进行排序,`equals()`方法用于判断元素是否相等,`binarySearch()`则在排序后的列表中查找元素。 7. Collections工具类:Collections提供了许多对...
总结,Java API的集合框架是Java编程的基础,理解并熟练使用这些集合类和接口,对于开发高效、可靠的Java应用程序至关重要。通过合理选择和利用不同类型的集合,开发者可以根据需求优化程序性能,提高代码的可读性...
Java 集合框架概述 ...* 排序元素:使用 sort() 方法对集合中的元素进行排序。 Java 集合框架是 Java 语言中的一种重要组件,提供了丰富的接口和类,简化了集合操作,并提高了编程效率、代码可读性和可维护性。
本文将通过实例代码和详细的解释,来展示如何使用有序顺序表实现集合的各种运算。 首先,需要了解集合的基本概念。集合是由一些元素组成的集合体,它们之间可以存在某种关系。集合的基本运算包括交集、差集、并集、...
// 使用Collections.sort()方法 List<Student> students = new ArrayList(); students.add(new Student("Alice", 20)); students.add(new Student("Bob", 18)); Collections.sort(students); ``` ### 总结 Java...
本文将详细解析Java中使用`sort`方法对集合排序的两种主要方式:基于`Comparable`接口和`Comparator`接口。 首先,我们来看第一种方式,通过实现`Comparable`接口来排序。`Comparable`接口定义了一个`compareTo`...
所以用户在使用sort包进行排序时无需考虑使用那种排序方式,sort.Interface定义的三个方法:获取数据集合长度的Len()方法、比较两个元素大小的Less()方法和交换两个元素位置的Swap()方法,就可以顺利对数据集合进行...
Java集合框架是Java编程语言中一个非常重要的组成部分,它提供了一组高效的数据结构和操作这些数据结构的方法。泛型则是Java在J2SE 5.0版本引入的一个特性,极大地提高了代码的类型安全性和可读性。下面我们将深入...