对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中保存对象,按对象中某一属性排序【含程序源码】”提供了这样的解决方案。下面将详细阐述这个主题。 首先,我们要明白在Java中,List接口是集合框架的一部分,它允许我们在集合中存储有序的元素。当...
今天,我们将介绍如何使用Java中的Collections类和Comparator接口对List按照date排序。 首先,让我们先了解一下 Leavecalendar 这个Bean类。Leavecalendar 类中有一个Date类型的属性,名为Date,并且有get和set方法...
来简化对Bean(集合)的排序,过滤和转换。 文档 阅读 使用说明来学习怎么使用 BeanQueryExample.java用Junit测试用例的方式展示用法。 快速入门 BeanQuery的使用非常简单也很直接,例子...
在这个例子中,我们使用了Collectors.collectingAndThen方法来对组内的元素进行处理,该方法将Collectors.toList()方法的结果作为输入,然后将其转换为一个 Coupon 对象。Collectors.toList()方法将List对象转换为一...
在Java编程中,Bean类通常指的是符合JavaBeans规范的类,它们具有属性、构造方法和getter/setter方法,用于封装数据并提供数据访问。 【描述】中提到的学习技术笔记和逐步补充的内容,暗示了这是一个逐步深入学习...
需要注意的是@Bean 方法的原理,实际上 Spring 会扫描有@Bean 注解的方法,然后把方法名称设置到 BeanDefinition 的 factoryMethod 属性中,接下来就会调到上面截图中的方法实现@Bean 方法的调用。 ...
Java Bean是一种在Java编程中广泛使用的组件模型,它主要用于封装数据和业务逻辑。在这个场景下,"java bean 分页"指的是使用Java Bean来实现数据的分页显示功能。分页技术是大型数据集处理中非常重要的一个部分,它...
Beanutils通过其核心类`BeanUtils`提供了动态获取和设置Bean属性的功能,这些方法主要依赖于Java的反射机制实现。 ##### 动态获取属性值 - **单个Bean属性**:`BeanUtils.getProperty(myBean, "code")`。该语句...
21、当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递? 10 22、我们在web 应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,...
Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 13、&和&&的区别。 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。 14、...
- **动作事件**:JSF标签可以包含`action`或`actionListener`属性,当用户执行操作(如点击按钮)时,会调用后台Bean中对应的方法。例如,`<h:commandButton action="#{bean.submit}" />`会在用户点击按钮时执行`...
例如,在配置文件中,我们可以定义一个Bean,其属性是一个`List`,并填充具体值: ```xml <bean id="exampleBean" class="com.example.ExampleClass"> <property name="listProperty"> <list> <value>Value1 ...
Commons Collections和Apache BeanUtils是Java开发中常用的两个库,它们为开发者提供了丰富的工具类和功能,使得处理集合对象和Bean属性变得更加便捷。这两个库在Java Web开发中扮演着重要角色,尤其是在构建MVC框架...
Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 10、&和&&的区别。 &是位运算符,表示按位与运算,&&是逻辑运算符,表示逻辑与(and)。 11、...
- **Bean Collections** 扩展了BeanUtils的功能,主要用于处理Java集合框架中的Bean对象,如List、Set和Map。 - **功能**:它提供了将JavaBean集合转化为其他集合类型的方法,例如将Bean列表转化为Map,或者将Bean...
要实现动态绑定,你需要创建一个Managed Bean,这个Bean通常包含一个集合属性,如List或ArrayList,用于存储数据。然后在JSF页面中,将`h:datatable`的`value`属性设置为Bean中集合的引用。这样,当Bean的数据发生...
`TreeSet`依赖于`Comparable`接口或`Comparator`来确定元素的顺序,但在查找特定元素时,除了元素的排序属性外,还需要考虑`equals()`方法,以确保正确地识别元素是否存在于集合中。 对于`hashCode()`,虽然它在...
- BeanUtils:提供对Bean属性进行读取和设置的方法。 - BeanUtilsBean:底层支持Bean操作的工具类。 - PropertyUtils:类似于BeanUtils,但提供了额外的功能,比如处理属性的继承。 - ConvertUtils和...