List<String> yyyyMM转List<String> yyyy-MM
时间: 2023-07-09 21:53:43 浏览: 109
可以使用Java 8的Stream API和DateTimeFormatter来实现:
```
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.List;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args) {
List<String> yyyyMMList = List.of("202201", "202202", "202203");
List<String> yyyy_MMList = yyyyMMList.stream()
.map(s -> LocalDate.parse(s + "01", DateTimeFormatter.ofPattern("yyyyMMdd")))
.map(d -> d.format(DateTimeFormatter.ofPattern("yyyy-MM")))
.collect(Collectors.toList());
System.out.println(yyyy_MMList); // [2022-01, 2022-02, 2022-03]
}
}
```
这里首先将每个字符串解析为LocalDate对象,然后再格式化为"yyyy-MM"的字符串。最后使用`collect`方法将结果收集到List中。
阅读全文