java List<String> 转换 为List<Date>
时间: 2023-05-18 10:02:55 浏览: 59
可以使用 Java 8 中的 Stream API 和 DateTimeFormatter 来实现:
List<String> stringList = Arrays.asList("2022-01-01", "2022-02-01", "2022-03-01");
List<Date> dateList = stringList.stream()
.map(str -> LocalDate.parse(str, DateTimeFormatter.ISO_LOCAL_DATE))
.map(localDate -> Date.from(localDate.atStartOfDay(ZoneId.systemDefault()).toInstant()))
.collect(Collectors.toList());
这里假设输入的字符串日期格式为 ISO_LOCAL_DATE,如果不是,需要修改 DateTimeFormatter。
相关问题
java List<String> 转换 为List<Date> 再转换为 List<long>
可以使用 Java 8 中的 Stream API 来实现这个转换过程:
List<String> stringList = Arrays.asList("2022-01-01", "2022-02-01", "2022-03-01");
List<Date> dateList = stringList.stream().map(Date::valueOf).collect(Collectors.toList());
List<Long> longList = dateList.stream().map(Date::getTime).collect(Collectors.toList());
这里我们首先将字符串列表转换为日期列表,然后再将日期列表转换为长整型列表。
java List<LocalDateTime>转 List<string>
要将 Java 中的 List<LocalDateTime> 转换为 List<String>,您可以使用 Stream API 来进行转换。您可以使用 DateTimeFormatter 类将 LocalDateTime 对象格式化为字符串。以下是一个示例代码:
```java
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<LocalDateTime> dateTimeList = new ArrayList<>();
// 向列表中添加 LocalDateTime 对象
// 转换为 List<String>
List<String> stringList = dateTimeList.stream()
.map(dateTime -> dateTime.format(DateTimeFormatter.ISO_LOCAL_DATE_TIME))
.collect(Collectors.toList());
// 打印结果
for (String str : stringList) {
System.out.println(str);
}
}
}
```
在这个示例代码中,我们使用了 Stream 的 map() 方法来将 LocalDateTime 对象转换为格式化的字符串,然后使用 collect() 方法将结果收集到 List<String> 中。您可以根据需要选择不同的 DateTimeFormatter 进行日期时间的格式化。