java中一个List集合,放的都是从不同的表中查出来的数据,请问我怎样可以根据其中的一个字段进行list排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中一个List集合,放的都是从不同的表中查出来的数据,请问我怎样可以根据其中的一个字段进行list排序相关的知识,希望对你有一定的参考价值。
用 Collections.sort()排序,给你个例子,你参考下
import java.util.ArrayList;import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class $
public static void main(String[] args)
List<Bean> data = new ArrayList<Bean>();
data.add(new Bean("aaaaa", 20));
data.add(new Bean("bbbbb", 10));
System.out.println("排序前:" + data);
Collections.sort(data, new Comparator<Bean>()
public int compare(Bean o1, Bean o2)
return o1.getName().compareTo(o2.getName());
);
System.out.println("按name升序:" + data);
Collections.sort(data, new Comparator<Bean>()
public int compare(Bean o1, Bean o2)
return o2.getName().compareTo(o1.getName());
);
System.out.println("按name降序:" + data);
Collections.sort(data, new Comparator<Bean>()
public int compare(Bean o1, Bean o2)
return o1.getAge() - o2.getAge();
);
System.out.println("按age升序:" + data);
Collections.sort(data, new Comparator<Bean>()
public int compare(Bean o1, Bean o2)
return o2.getAge() - o1.getAge();
);
System.out.println("按age降序:" + data);
class Bean
private String name;
private int age;
public Bean(String name, int age)
this.name = name;
this.age = age;
public String getName()
return name;
public void setName(String name)
this.name = name;
public int getAge()
return age;
public void setAge(int age)
this.age = age;
public String toString()
return "[" + name + "," + age + "]";
追问
我的List中放的不是一个实体类啊,而是从多张表中查询出来的数据
参考技术A 把这个list集合中的所有元素,全部都把这个元素的要比较字段的值取出来放到数组里边,然后对这些值进行排序,再对应到list集合即可本回答被提问者采纳 参考技术B 需要自己写一个比较器
假设类型是
class 你的类型
public 字段类型 字段名;//这里为了方便设置成public 千万别学哦~
自己写的比较器:
Comparator<你的类型> com=new Comparator<你的类型>()
public int compare(你的类型 left,你的类型 right)
自己定义比较规则;
如果 "小于"则返回-1 等于返回0 "大于"返回1;
//至于怎样算是 "小于" 靠你自己定义了
;
在c#如何将listview中的数据保存到数据库中的表中
感激
private void listView1_Click(object sender, EventArgs e)//listview点击事件if (this.listView1.SelectedItems == null) return;
ListViewItem item = this.listView1.SelectedItems[0];//选中的ltem
if (this.comboBox1.SelectedIndex == -1) return;
if (item == null) return;
//把每一项里的值取出来
string a = item.SubItems[0].Text.ToString();
string b = item.SubItems[1].Text.ToString();
string c = item.SubItems[2].Text.ToString();
string d = item.SubItems[3].Text.ToString();
然后你用ADO连接数据库,写insert语句,把取出来的值当参数传给SQL语句。就可以了 思路大概是这样的,希望你帮助你~ 参考技术A Ctrl+C
Ctrl+V
以上是关于java中一个List集合,放的都是从不同的表中查出来的数据,请问我怎样可以根据其中的一个字段进行list排序的主要内容,如果未能解决你的问题,请参考以下文章
怎么用Qt的TableView来显示数据,数据有些来自MySQL的表中(多张不同的表),并且有些数据并不是从MySQL取