我有一个输入日期格式yyyy-MM-dd_HH:mm:ss.SSS,并以这种方式将其转换为 long:
SimpleDateFormat simpleDateFormat =
new SimpleDateFormat("yyyy-MM-dd_HH:mm:ss.SSS");
try {
Date date = simpleDateFormat.parse(lapTime);
time = date.getTime();
} catch (ParseException e) {
e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)
并且,经过一些操作后,mm:ss.SSS从 long 返回:
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("mm:ss.SSS");
return simpleDateFormat.format(new Date(time));
Run Code Online (Sandbox Code Playgroud)
如何将我的旧样式代码更改为 Java8?我看了LocalDateTime和Instant类,但不知道如何正确使用它们。
如果我有Warehouse包含不同框列表的类,则放置在这里。盒子里面可以有盒子,在这种情况下,它们的 id 以“big”开头,它们的 List 由“small”盒子组成
class Warehouse{
private List<Box> boxes;
}
class Box {
private String id;
private List<Box> innerBoxes;
}
Run Code Online (Sandbox Code Playgroud)
下一个方法返回Stream的Box是在上课Warehouse。
public Stream<Box> getBoxes();
Run Code Online (Sandbox Code Playgroud)
我如何获得所有盒子,即一个仓库和“大”盒子?我试过下一个方法
public Stream<Box> getAllBoxes(){
return getBoxes().stream().filter(b -> b.getId().startsWith("big"));
}
Run Code Online (Sandbox Code Playgroud)
但是它只返回内盒,如何在一个流中收集内盒和大盒?