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,}
分享到:
相关推荐
使用 Collections.sort() 方法可以对 List 集合进行排序,然后使用 for-each 循环遍历集合输出元素。 集合框架是 Java 中非常重要的一部分,提供了多种数据结构和操作,可以满足不同的应用需求。熟悉集合框架的使用...
本文实例讲述了Go语言使用sort包对任意类型元素的集合进行排序的方法。分享给大家供大家参考。具体如下: 使用sort包的函数进行排序时,集合需要实现sort.Inteface接口,该接口中有三个方法: 代码如下:// Len is ...
所以用户在使用sort包进行排序时无需考虑使用那种排序方式,sort.Interface定义的三个方法:获取数据集合长度的Len()方法、比较两个元素大小的Less()方法和交换两个元素位置的Swap()方法,就可以顺利对数据集合进行...
java 集合类的排序主要是用Collections.sort方法,Collections和Collection是不一样的,前者是类,后者是接口,在这里,我主要是想说明它的sort方法的几种类型, 提示:实现接口的方法时,只需要比较两个数,大的返回1,...
10-集合(Collections-sort).avi
本文通过两种方法给大家介绍java集合中的Collections.sort方法对list排序,第一种方式是list中的对象实现Comparable接口,第二种方法是根据Collections.sort重载方法实现,对collections.sort方法感兴趣的朋友一起...
Collection 是 Java 中的一个接口,定义了集合操作的基本方法,而 Collections 是一个工具类,提供了许多静态方法来操作集合。 Java 中的 Collection Framework Java 中的 Collection Framework 包括了多种集合类...
List sortList = controllerForList.sortList(list, arr1, arr2); 参数1 排序的集合 参数2 排序的字段(与定义字段一致) 可多个 参数3 排序方式(asc desc) 暂时只支持String 和int的排序 可能有些BUG 敬请谅解
主要介绍了Java sort集合排序的两种方式解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
然后,我们可以将集合类型转换成列表类型,并使用列表的排序方法来实现排序: a = list(a) a.sort() print a #结果是:[1, 2, 3, 4] Pyton集合还支持union(联合)、intersection(交)、difference(差)等数学...
本文档主要讲解Java集合框架中的ArrayList、HashMap和Collections类的使用,通过一个扑克牌游戏的示例程序来演示这些类的应用。 一、 Java集合框架 Java集合框架(Java Collections Framework)是Java语言中对集合...
在向集合中添加新模型或调用 sort() 方法时执行排序。安装 npm install ampersand-collection-sort-mixin用法mixin 使用存储在会话属性中的两个属性: sortProps - 字符串数组或字符串。 用于对集合进行排序的属性...
reverse 还可以同 sort_by 一起使用,如:想让用户按年龄降序排序,那么可以这个样写 `<#list userList?sort_by(“age”)?reverse as user>…</#list>` 三、 Freemarker 如何遍历 List 实例应用 通过上面的介绍,...
排序是一个难点,里面包含了堆排序等等有关排序的算法,希望对大家有所帮助...this is a good resource and way to study sort the number that what you wanted,please come and download it.
该排序算法集合包括插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序,除此之外还实现了各种排序算法效率的比较
主要介绍了JAVA对list集合进行排序Collections.sort(),需要的朋友可以参考下
Ruby Standard Library: Ruby 的标准库中包含了一些基本的算法,比如排序算法(sort 方法)、搜索算法(find 方法)等。 RubyGems: RubyGems 是 Ruby 的包管理器,它允许你安装和使用第三方库。许多算法库可以通过 ...
数组有工具类Arrays,集合也有一个工具类Collections,这里练习一下集合工具类的排序方法,顺便过一下sort排序方法,比较器。 sort方法 sort(List<T> list):根据其元素的natural ordering对指定的列表进行排序。 ...
该题的难点在于数据结构和排序算法,涉及的集合类(容器)使用,以及在定时器和鼠标消息处理函数中的编写。 1) 常见的排序算法如下: 气泡排序 快速排序 折半插入排序 直接插入排序 希尔排序 直接选择排序...