java list 按时间排序
时间: 2023-11-20 13:07:09 浏览: 106
可以使用 Collections.sort() 方法对 List 进行排序,具体实现如下:
```java
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class SortListByTime {
public static void sortByTime(List<YourObject> list) {
Collections.sort(list, new Comparator<YourObject>() {
@Override
public int compare(YourObject o1, YourObject o2) {
return o1.getTime().compareTo(o2.getTime());
}
});
}
}
```
其中,YourObject 是你自己定义的类,需要实现 Comparable 接口并重写 compareTo() 方法,以便在比较时间时使用。如果你不想修改 YourObject 类,也可以在 Comparator 中直接比较时间。
相关问题
java集合list按时间排序
可以通过以下步骤实现按时间排序:
1. 定义一个实体类,其中包含需要排序的时间属性。
2. 创建一个List对象,并将实体类对象添加到List中。
3. 通过Collections.sort()方法对List进行排序,并传入一个Comparator对象。
4. 在Comparator对象中,实现compare()方法,比较两个实体类对象的时间属性大小,返回排序结果。
示例代码如下:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
List<MyEntity> list = new ArrayList<>();
list.add(new MyEntity("2021-01-01 10:00:00"));
list.add(new MyEntity("2021-01-02 12:00:00"));
list.add(new MyEntity("2021-01-03 08:00:00"));
Collections.sort(list, new Comparator<MyEntity>() {
@Override
public int compare(MyEntity o1, MyEntity o2) {
return o1.getTime().compareTo(o2.getTime());
}
});
for (MyEntity e : list) {
System.out.println(e.getTime());
}
}
}
class MyEntity {
private String time;
public MyEntity(String time) {
this.time = time;
}
public String getTime() {
return time;
}
}
```
输出结果为:
```
2021-01-01 10:00:00
2021-01-02 12:00:00
2021-01-03 08:00:00
```
java集合list按时间排序降序
按照时间降序排序,可以在Comparator对象的compare()方法中反转比较结果,示例代码如下:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
List<MyEntity> list = new ArrayList<>();
list.add(new MyEntity("2021-01-01 10:00:00"));
list.add(new MyEntity("2021-01-02 12:00:00"));
list.add(new MyEntity("2021-01-03 08:00:00"));
Collections.sort(list, new Comparator<MyEntity>() {
@Override
public int compare(MyEntity o1, MyEntity o2) {
return o2.getTime().compareTo(o1.getTime()); // 反转比较结果
}
});
for (MyEntity e : list) {
System.out.println(e.getTime());
}
}
}
class MyEntity {
private String time;
public MyEntity(String time) {
this.time = time;
}
public String getTime() {
return time;
}
}
```
输出结果为:
```
2021-01-03 08:00:00
2021-01-02 12:00:00
2021-01-01 10:00:00
```