`

集合sort方法的使用

    博客分类:
  • java
阅读更多
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,}
分享到:
评论

相关推荐

    集合框架练习.doc

    使用 Collections.sort() 方法可以对 List 集合进行排序,然后使用 for-each 循环遍历集合输出元素。 集合框架是 Java 中非常重要的一部分,提供了多种数据结构和操作,可以满足不同的应用需求。熟悉集合框架的使用...

    Go语言使用sort包对任意类型元素的集合进行排序的方法

    本文实例讲述了Go语言使用sort包对任意类型元素的集合进行排序的方法。分享给大家供大家参考。具体如下: 使用sort包的函数进行排序时,集合需要实现sort.Inteface接口,该接口中有三个方法: 代码如下:// Len is ...

    go语言中sort包的实现方法与应用详解

    所以用户在使用sort包进行排序时无需考虑使用那种排序方式,sort.Interface定义的三个方法:获取数据集合长度的Len()方法、比较两个元素大小的Less()方法和交换两个元素位置的Swap()方法,就可以顺利对数据集合进行...

    11集合.rarjava 集合类

    java 集合类的排序主要是用Collections.sort方法,Collections和Collection是不一样的,前者是类,后者是接口,在这里,我主要是想说明它的sort方法的几种类型, 提示:实现接口的方法时,只需要比较两个数,大的返回1,...

    10-集合(Collections-sort).avi

    10-集合(Collections-sort).avi

    用Java集合中的Collections.sort方法如何对list排序(两种方法)

    本文通过两种方法给大家介绍java集合中的Collections.sort方法对list排序,第一种方式是list中的对象实现Comparable接口,第二种方法是根据Collections.sort重载方法实现,对collections.sort方法感兴趣的朋友一起...

    java集合类面试题总结

    Collection 是 Java 中的一个接口,定义了集合操作的基本方法,而 Collections 是一个工具类,提供了许多静态方法来操作集合。 Java 中的 Collection Framework Java 中的 Collection Framework 包括了多种集合类...

    List集合排序222222

    List sortList = controllerForList.sortList(list, arr1, arr2); 参数1 排序的集合 参数2 排序的字段(与定义字段一致) 可多个 参数3 排序方式(asc desc) 暂时只支持String 和int的排序 可能有些BUG 敬请谅解

    Java sort集合排序的两种方式解析

    主要介绍了Java sort集合排序的两种方式解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    pytion集合的用法

    然后,我们可以将集合类型转换成列表类型,并使用列表的排序方法来实现排序: a = list(a) a.sort() print a #结果是:[1, 2, 3, 4] Pyton集合还支持union(联合)、intersection(交)、difference(差)等数学...

    java集合案例.docx

    本文档主要讲解Java集合框架中的ArrayList、HashMap和Collections类的使用,通过一个扑克牌游戏的示例程序来演示这些类的应用。 一、 Java集合框架 Java集合框架(Java Collections Framework)是Java语言中对集合...

    ampersand-collection-sort-mixin:用于扩展与号集合的 mixin,具有按多个属性排序和升序降序的能力。 向集合中添加新模型或调用 sort() 方法时执行排序

    在向集合中添加新模型或调用 sort() 方法时执行排序。安装 npm install ampersand-collection-sort-mixin用法mixin 使用存储在会话属性中的两个属性: sortProps - 字符串数组或字符串。 用于对集合进行排序的属性...

    Freemarker中遍历list集合实例

    reverse 还可以同 sort_by 一起使用,如:想让用户按年龄降序排序,那么可以这个样写 `&lt;#list userList?sort_by(“age”)?reverse as user&gt;…&lt;/#list&gt;` 三、 Freemarker 如何遍历 List 实例应用 通过上面的介绍,...

    数据结构PPT----排序算法集合(sort )

    排序是一个难点,里面包含了堆排序等等有关排序的算法,希望对大家有所帮助...this is a good resource and way to study sort the number that what you wanted,please come and download it.

    使用c++实现的各种排序算法集合

    该排序算法集合包括插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序,除此之外还实现了各种排序算法效率的比较

    JAVA对list集合进行排序Collections.sort()

    主要介绍了JAVA对list集合进行排序Collections.sort(),需要的朋友可以参考下

    Ruby 类型算法集合包

    Ruby Standard Library: Ruby 的标准库中包含了一些基本的算法,比如排序算法(sort 方法)、搜索算法(find 方法)等。 RubyGems: RubyGems 是 Ruby 的包管理器,它允许你安装和使用第三方库。许多算法库可以通过 ...

    Collections集合工具类排序.docx

    数组有工具类Arrays,集合也有一个工具类Collections,这里练习一下集合工具类的排序方法,顺便过一下sort排序方法,比较器。 sort方法 sort(List&lt;T&gt; list):根据其元素的natural ordering对指定的列表进行排序。 ...

    MFC_SORT_CODE.zip

    该题的难点在于数据结构和排序算法,涉及的集合类(容器)使用,以及在定时器和鼠标消息处理函数中的编写。 1) 常见的排序算法如下: 气泡排序 快速排序 折半插入排序 直接插入排序 希尔排序 直接选择排序...

Global site tag (gtag.js) - Google Analytics