LIST<JAVABEAN>排序,其他方法也有。这只是其中之一。
注意的就三个点:
1.继承:implements Comparable<JAVABEAN>
2.实现:public int compareTo(JAVABEAN arg0) {
return this.getId().compareTo(arg0.getId());
}
this.getId,arg0.getId代表的是按哪个属性排序。
至此,排序准备工作已经完成。
3.使用:Collections.sort,Collections.reverse进行升序,降序排列。
示例:
package com.troila.ts.notice.bean; import java.util.ArrayList; import java.util.Collections; import java.util.Date; import java.util.List; public class NoticeVo implements Comparable<NoticeVo>{ private static final long serialVersionUID = 1L; private Integer id; //'主键' private Integer noticeType; //'通知类型(1:培训 2:系统)' private String title; //'标题' private String content; //'内容' private Integer noticeSenderId; //发送该通知人员id private Integer isRead; //是否已读 private Date createTime; //'创建时间' @Override public int compareTo(NoticeVo arg0) { return this.getId().compareTo(arg0.getId()); } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public Integer getNoticeType() { return noticeType; } public void setNoticeType(Integer noticeType) { this.noticeType = noticeType; } public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } public String getContent() { return content; } public void setContent(String content) { this.content = content; } public Integer getNoticeSenderId() { return noticeSenderId; } public void setNoticeSenderId(Integer noticeSenderId) { this.noticeSenderId = noticeSenderId; } public Integer getIsRead() { return isRead; } public void setIsRead(Integer isRead) { this.isRead = isRead; } public Date getCreateTime() { return createTime; } public void setCreateTime(Date createTime) { this.createTime = createTime; } public static void main(String args[]){ NoticeVo n1 = new NoticeVo(); NoticeVo n2 = new NoticeVo(); NoticeVo n3 = new NoticeVo(); List<NoticeVo> list = new ArrayList<NoticeVo>(); n1.setId(1); n1.setIsRead(0); n1.setTitle("title1"); n2.setId(2); n2.setIsRead(1); n2.setTitle("title2"); n3.setId(3); n3.setIsRead(2); n3.setTitle("title3"); list.add(n2); list.add(n3); list.add(n1); for(NoticeVo vo:list){ System.out.println(vo.getId()+"---------"+vo.getTitle()); } Collections.sort(list); for(NoticeVo vo:list){ System.out.println(vo.getId()+"---------"+vo.getTitle()); } Collections.reverse(list); for(NoticeVo vo:list){ System.out.println(vo.getId()+"---------"+vo.getTitle()); } } }
相关推荐
一般使用springjdbc、hibernate的sql查询,库获取到的数据都是List<Map<String, Object>>结果集,如果我们要转化为JavaBean,则需要做一系列的map.get(),然后obj.set()。 此工程中就是解决List<Map<String, Object>...
List<Map<String, Object>> listitem = new ArrayList<>(); Collections.sort(listitem, new Comparator<Map<String, Object>>() { @Override public int compare(Map<String, Object> o1, Map<String, Object> o2...
`<s:set>` 赋值给变量,`<s:sort>` 对集合进行排序,`<s:submit>` 创建提交按钮,`<s:subset>` 输出集合的子集。 T. `<s:tabbedPanel>, <s:table>, <s:text>, <s:textarea>, <s:textfield>`: 创建选项卡面板、表格...
`<s:sort>`根据指定比较器对列表进行排序。 `<s:submit>`创建提交按钮,用于提交表单数据。 `<s:subset>`为遍历集合时输出子集,可以用于分页等操作。 R. `<s:tabbedPanel>`,`<s:table>`,`<s:text>`,`<s:...
- `<s:sort>` 通过比较器对列表进行排序。 - `<s:submit>` 创建提交按钮,触发表单的提交。 - `<s:subset>` 似乎在文档中没有明确描述,可能是遗漏或拼写错误,通常不常见。 以上只是Struts2标签库的一部分,实际...
- `<s:sort>`:根据提供的比较器对列表进行排序。 T. `<s:tabbedPanel>`和`<s:table>`: - `<s:tabbedPanel>`:创建一个带有选项卡的面板,方便组织内容。 - `<s:table>`:创建表格,可以根据数据源动态生成表格行...
1. `<s:bean>`:类似于Struts1.x中的JavaBean标签,用于处理JavaBean的属性。 C组标签: 1. `<s:checkbox>`:创建复选框,可与列表结合使用。 2. `<s:checkboxlist>`:创建多选框列表,允许用户选择多个选项。 3. `...
1. `<s:bean>`:类似Struts1.x中的JavaBean标签,用于获取或设置JavaBean的属性。 C部分: 1. `<s:checkbox>`:创建复选框,可以绑定值。 2. `<s:checkboxlist>`:创建复选框列表,用户可选择多个值。 3. `<s:...
public List<UserInfo> selectList(List<String> userIds); ``` 在XML中,可以使用foreach循环来遍历List中的每个元素: ```xml <select id="selectList" resultMap="BaseResultMap"> select * from user_info...
1. `<s:bean>`:类似于Struts1.x中的JavaBean标签,用于获取或设置JavaBean的属性值。 C部分: 1. `<s:checkbox>`:创建复选框,可以绑定数据到Action的属性。 2. `<s:checkboxlist>`:用于创建多个复选框,通常...
3. `<s:sort comparator=""></s:sort>` - 对列表进行排序,可以通过比较器自定义排序规则。 以上就是Struts2标签的详细解析,它们极大地简化了MVC框架中的视图层开发,提高了开发效率和代码可读性。通过这些标签,...
List<User> users = ... // 获取用户列表 request.setAttribute("users", users); %> <html> <body> <display:table name="users"> <display:column property="username" title="用户名" /> <display:column ...
private List<Person> listOfPersons = new ArrayList<>(); @Before public void setUp() { listOfPersons.add(new Person(15, "John Doe", new Date())); listOfPersons.add(new Person(20, "Janette Doe", ...
2. <s:checkboxlist list=""></s:checkboxlist>-----多选框 3. <s:combobox list=""></s:combobox>-----下拉框 4. <s:component></s:component>-----图像符号 D: 1. <s:date/>-----获取日期格式 2. <s:...
7. `<s:bean>`:类似于Struts1.x中的JavaBean标签,用于处理JavaBean对象。 8. `<s:checkbox>`:创建复选框,允许用户选择多个选项。 9. `<s:checkboxlist>`:用于创建一组复选框,通常与列表或数组配合使用。 10...
8. **JavaBean标签 `<s:bean>`**:在Struts1.x中使用较多,用于处理JavaBean对象。 9. **复选框标签 `<s:checkbox>``和`<s:checkboxlist>`**:分别用于创建单个和多个可选的复选框。 10. **图像符号标签 `<s:...
#### `<s:checkbox>` 和 `<s:checkboxlist>` 标签 分别用于生成单个复选框和复选框列表,支持数据绑定和值列表选择。 #### `<s:combobox>` 标签 生成下拉列表框,支持数据绑定和选项列表。 #### `<s:component>`...
40. `<s:sortcomparetor>`:用于排序比较,实现数据的排序功能。 以上仅是Struts 2.0标签库中的一部分标签,它们各自拥有独特的功能,能够帮助开发者高效地构建动态、交互式的Web应用。通过灵活运用这些标签,可以...
36. `<s:sort comparator="">`:根据指定的比较器对列表进行排序。 37. `<s:submit>`:创建一个提交按钮,用于提交表单数据。 38. `<s:subset>`:用于遍历集合并输入子集,适用于分页或筛选场景。 39. `<s:...
<s:inputtransferselect name="selectedItems" list="itemsList" /> ``` 27. **<s:iterator> 循环迭代** - **用途**:用于遍历集合。 - **示例**: ```xml <s:iterator value="items"> <s:property value=...