首页 > 解决方案 > 重构 lamda 表达式以使用 Comparator.comparingDouble

问题描述

我有以下 lamda 表达式。我的 IDE(intellij 想法)告诉我它应该被替换,Comparator.comparingDouble但我找不到办法。

List<javafx.stage.Screen> screenList = screens;

screenList.sort((screenA, screenB) -> Double.compare(
               screenA.getBounds().getMinX(), screenB.getBounds().getMinX()));

有没有办法做到这一点

screenList.sort(Comparator.comparingDouble(...));

或者这是来自intellij的错误注释?预先感谢您的帮助!

标签: javaintellij-idealambda

解决方案


您只需要一个转换Screen为的函数double

screenList.sort(Comparator.comparingDouble(screen -> screen.getBounds().getMinX()));

推荐阅读