`
laiseeme
  • 浏览: 124744 次
  • 性别: Icon_minigender_2
  • 来自: 沈阳
社区版块
存档分类
最新评论

对list的中的bean的某属性排序的方法

阅读更多
对list的中的bean的某属性排序的方法

我们经常会碰到多装到list的bean中的某个属性排序
下面介绍一种简单的方法使用Collections类的sort方法进行排序

先建立一个要排序的bean
要实现Comparable接口
public class JavaBean implements Comparable<JavaBean>
{
	private String name;
	private Integer value;
	
	public JavaBean(String name, Integer value) 
	{
		this.name = name;
		this.value = value;
	}

	public String getName() 
	{
		return name;
	}
	
	public void setName(String name) 
	{
		this.name = name;
	}
	
	public Integer getValue() 
	{
		return value;
	}
	
	public void setValue(Integer value) 
	{
		this.value = value;
	}

	//实现Comparable接口中的这个方法
	public int compareTo(JavaBean javaBean) 
	{
		return javaBean.getValue().compareTo(this.getValue()); 
	}
}


使用Collections类的sort方法进行排序
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class TestSort {

	public static void main(String[] args) 
	{
		List<JavaBean> javaBeanList = new ArrayList<JavaBean>(); 
		javaBeanList.add(new JavaBean("第一个",1));
		javaBeanList.add(new JavaBean("第二个",3));
		javaBeanList.add(new JavaBean("第三个",2));
		
		Collections.sort(javaBeanList);
		
		for(int i=0;i<javaBeanList.size();i++)
		{
			JavaBean temp = javaBeanList.get(i);
			System.out.println(temp.getName());
			System.out.println(temp.getValue());
		}
	}

}



打印出来的结果
第二个
3
第三个
2
第一个
1

按降序排列,好像内部是用快速排序实现的
分享到:
评论

相关推荐

    List中保存对象,按对象中某一属性排序【含程序源码】

    这篇博客“List中保存对象,按对象中某一属性排序【含程序源码】”提供了这样的解决方案。下面将详细阐述这个主题。 首先,我们要明白在Java中,List接口是集合框架的一部分,它允许我们在集合中存储有序的元素。当...

    java 中List按照date排序的实现

    今天,我们将介绍如何使用Java中的Collections类和Comparator接口对List按照date排序。 首先,让我们先了解一下 Leavecalendar 这个Bean类。Leavecalendar 类中有一个Date类型的属性,名为Date,并且有get和set方法...

    Java工具库BeanQuery.zip

    来简化对Bean(集合)的排序,过滤和转换。 文档 阅读 使用说明来学习怎么使用 BeanQueryExample.java用Junit测试用例的方式展示用法。 快速入门 BeanQuery的使用非常简单也很直接,例子...

    JAVA JDK8 List分组获取第一个元素的方法

    在这个例子中,我们使用了Collectors.collectingAndThen方法来对组内的元素进行处理,该方法将Collectors.toList()方法的结果作为输入,然后将其转换为一个 Coupon 对象。Collectors.toList()方法将List对象转换为一...

    mi-yi-collection-bean-master_java_源码

    在Java编程中,Bean类通常指的是符合JavaBeans规范的类,它们具有属性、构造方法和getter/setter方法,用于封装数据并提供数据访问。 【描述】中提到的学习技术笔记和逐步补充的内容,暗示了这是一个逐步深入学习...

    Spring bean对象实例化实现过程图解

    需要注意的是@Bean 方法的原理,实际上 Spring 会扫描有@Bean 注解的方法,然后把方法名称设置到 BeanDefinition 的 factoryMethod 属性中,接下来就会调到上面截图中的方法实现@Bean 方法的调用。 ...

    java bean 分页

    Java Bean是一种在Java编程中广泛使用的组件模型,它主要用于封装数据和业务逻辑。在这个场景下,"java bean 分页"指的是使用Java Bean来实现数据的分页显示功能。分页技术是大型数据集处理中非常重要的一个部分,它...

    Beanutils基本用法.doc

    Beanutils通过其核心类`BeanUtils`提供了动态获取和设置Bean属性的功能,这些方法主要依赖于Java的反射机制实现。 ##### 动态获取属性值 - **单个Bean属性**:`BeanUtils.getProperty(myBean, "code")`。该语句...

    java面试宝典

    21、当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 10 22、我们在web 应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,...

    超级有影响力霸气的Java面试题大全文档

    Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 13、&和&&的区别。 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。 14、...

    JSF 标签,前后台交换代码

    - **动作事件**:JSF标签可以包含`action`或`actionListener`属性,当用户执行操作(如点击按钮)时,会调用后台Bean中对应的方法。例如,`&lt;h:commandButton action="#{bean.submit}" /&gt;`会在用户点击按钮时执行`...

    SpringCollectionExample

    例如,在配置文件中,我们可以定义一个Bean,其属性是一个`List`,并填充具体值: ```xml &lt;bean id="exampleBean" class="com.example.ExampleClass"&gt; &lt;property name="listProperty"&gt; &lt;list&gt; &lt;value&gt;Value1 ...

    commons.collections-3.2.1和commons-beanutils-1.9.2和commons.collections-3.2.1

    Commons Collections和Apache BeanUtils是Java开发中常用的两个库,它们为开发者提供了丰富的工具类和功能,使得处理集合对象和Bean属性变得更加便捷。这两个库在Java Web开发中扮演着重要角色,尤其是在构建MVC框架...

    进销存系统文档作业例子

    Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 10、&和&&的区别。 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。 11、...

    commons相关jar

    - **Bean Collections** 扩展了BeanUtils的功能,主要用于处理Java集合框架中的Bean对象,如List、Set和Map。 - **功能**:它提供了将JavaBean集合转化为其他集合类型的方法,例如将Bean列表转化为Map,或者将Bean...

    JSF数据表绑定数据

    要实现动态绑定,你需要创建一个Managed Bean,这个Bean通常包含一个集合属性,如List或ArrayList,用于存储数据。然后在JSF页面中,将`h:datatable`的`value`属性设置为Bean中集合的引用。这样,当Bean的数据发生...

    JAVA中软面试题

    `TreeSet`依赖于`Comparable`接口或`Comparator`来确定元素的顺序,但在查找特定元素时,除了元素的排序属性外,还需要考虑`equals()`方法,以确保正确地识别元素是否存在于集合中。 对于`hashCode()`,虽然它在...

    JakartaCommons 详细教程更助于你的基础

    - BeanUtils:提供对Bean属性进行读取和设置的方法。 - BeanUtilsBean:底层支持Bean操作的工具类。 - PropertyUtils:类似于BeanUtils,但提供了额外的功能,比如处理属性的继承。 - ConvertUtils和...

Global site tag (gtag.js) - Google Analytics