小编aay*_*v20的帖子

迭代整数ifPresent的可选列表

我有一个可选的整数列表.我希望看看列表是否实际存在,然后将其转换为流.一种方法是这样做

Optional<List<Integer>> listOfNumbers = ...
if (listOfNumbers.isPresent()) {
    listOfNumbers.get().stream();
}
Run Code Online (Sandbox Code Playgroud)

但是,如果有条件,我不希望这样.我搜索并看到它ifPresent()做同样的事情,但当我这样做时listOfNumbers.ifPresent(this::get)),我收到以下错误:

非静态变量,不能从静态上下文引用

能否以有效的方式帮助我做到这一点?这对我来说还是新的,所以如果我的理解有任何不正确的地方,请告诉我.

lambda list optional java-8 java-stream

11
推荐指数
1
解决办法
7404
查看次数

找出两个长纪元值表示的两个日期之间的差异

我的需要是我有一个Long值,它代表自epoch以来的毫秒值.我希望了解当天和当天之间的天数差异.我正在使用Java8DAYS.between(inputDate, currentDate)

对于我使用的currentDate LocalDateTime currentDate = LocalDateTime.now(); 但是我面临的问题是当我将long值转换为java8 LocalDateTime时.我用的时候

LocalDate date = Instant.ofEpochMilli(1490372528)
  .atZone(ZoneId.systemDefault())
  .toLocalDate();
Run Code Online (Sandbox Code Playgroud)

结果是1970-01-18当我在https://www.epochconverter.com/中输入相同的值时,它给出了Fri, 24 Mar 2017 16:22:08 GMT

为什么会出现这种差异?如何从长值中有效地获取java8日期以在DAYS.between()中使用?

java epoch java-8 java-time localdate

1
推荐指数
1
解决办法
2428
查看次数

标签 统计

java-8 ×2

epoch ×1

java ×1

java-stream ×1

java-time ×1

lambda ×1

list ×1

localdate ×1

optional ×1