当前位置: 首页 > 知识库问答 >
问题:

如何在没有collect方法的情况下使用Java8Stream API?

何松
2023-03-14

我有一个问题要解决,我应该在哪里从使用Java8 streams的员工列表中找到性别为男性的第n个员工,如果没有找到,则返回可选的空。

class Employee{
   private int id;
   private String name;
   private String gender;
   
  //getters and setters
}

下面是接受Employee对象列表和整数n的方法,其中n表示必须返回的第n个男性雇员(如果存在的话)。

Optional<Employee> nthMaleEmployee(List<Employee> employees, int n){

}
return employees.stream().filter((e)-> e.getGender().equalsIgnoreCase("male")).collect(Collectors.toList()).get(n-1);

共有1个答案

郎玮
2023-03-14

使用skip方法跳过列表中的(n-1)个元素,findFirst方法将给出第n个元素。

 类似资料:
  • 我有一个带有私有方法的类,该方法调用一些外部类并执行它,如果不使用powermock,我如何防止这种情况发生?(该项目使用Junit5,目前还不支持powermock)。 我考虑过将这些函数移到外面,但我觉得有时方法确实属于特定的类,因为它们是它的一部分,将它们移出对我来说没有意义,下面只是一个例子来说明。 我已经知道大多数人会说不要测试私有方法,但a.我不完全同意,b.我不想在这里测试这个方法,

  • 我正在玩grpc 有人成功使用进行生产吗?我们需要包括特使在内的所有依赖项吗?

  • 我看到的所有解决方案都需要使用。但是,我想在Eclipse之外的单个文件上使用CDT解析器。那有什么办法吗?

  • 问题内容: 这是使用awt包的Java图形的初学者问题。我在网上找到了这段代码来绘制一些简单的图形。 在main方法中,在画布上没有调用paint()。但是我运行了该程序并且它可以工作,那么paint()方法如何运行? 问题答案: 该方法由事件调度线程(EDT)调用,并且基本上不受您的控制。 它的工作方式如下:当 实现 用户界面(以您的情况为例)时,Swing将启动EDT。然后,此EDT线程在后台

  • 问题内容: 我在整个应用程序中都使用spring 。现在,我也想为一个没有的创建一个。那有可能吗? 问题答案: JPA要求每个实体都有一个ID。因此,不可以,没有ID的实体是不允许的。 每个JPA实体都必须有一个主键。 从JPA规范 您可能想从这里阅读更多有关JPA如何处理数据库端没有ID的情况的信息(请参阅“无主键”)。

  • 我正在尝试将使用webpack转译. vue文件的Vue项目的绝对最低示例放在一起。 我的目标是详细了解每个构建步骤。大多数教程建议使用并使用config。尽管这种设置很有效,但对于我的简单目的来说,似乎有些过头了。目前,我不想要babel、linting或带有热模块重新加载的实时web服务器。 一个简单的例子,只需就可以了!Webpack将vue库和我自己的代码编译成一个包。 但现在,我想将vu