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

如何正确执行collect(collectors.tomap)?

孙辰阳
2023-03-14
public Map<String, Ethernet> foo() throws SocketException {
    var networkInterfaces = NetworkInterface.getNetworkInterfaces();
    return Collections.list(networkInterfaces).stream()
        .filter(iFace -> **iFace.getName()**.startsWith("w"))
        .map(this::getEthernet)
        .collect(Collectors.toMap(**iFace.getName()????**, Function.identity()));
}

public Ethernet getEthernet(NetworkInterface networkInterface) {
    //return Ethernet       
}

如何正确执行collect以获取iface.getName()作为键并将Ethernet对象作为每个流元素的值?

共有1个答案

夹谷和韵
2023-03-14

您需要在collection中调用GetEthernet,而不是在之前的映射中调用,您的代码可能如下所示:

return Collections.list(networkInterfaces).stream()
        .filter(iFace -> iFace.getName().startsWith("w"))
        .collect(Collectors.toMap(NetworkInterface::getName, this::getEthernet));
 类似资料:
  • 如何正确执行collect以获取作为键并将Ethernet对象作为每个流元素的值?

  • 问题内容: WatchService听起来像一个令人兴奋的主意…不幸的是,它看起来像在tutorial / api中警告的那样低级,而且实际上不适合Swing事件模型(或者我错过了一些显而易见的东西,概率不为零) 以本教程中 WatchDir 示例中的代码(仅处理单个目录)为例,我基本上结束了 扩展SwingWorker 在构造函数中进行注册 将无限循环放在doInBackground中等待键 通

  • 问题内容: 我使用以下代码在Python中启动并关闭 在脚本结束执行后,我仍然在Mac活动监视器中找到的实例。实际上,每次我运行脚本时,都会创建一个新进程。 我应该如何关闭驱动程序? 问题答案: 不保证该方法释放与驱动程序实例关联的所有资源。请注意,这些资源包括但不限于驱动程序可执行文件(在这种情况下为PhantomJS)。该方法旨在释放驱动程序的所有资源,包括退出可执行进程。

  • 问题内容: 我使用Java中的以下代码使用HMAC-SHA1哈希一些值: 属于 在PHP中,有一个类似的函数可用来比较Java实现返回的值。 因此,首先尝试是: 返回: 我的Java函数也会返回。 好的,看来可行。然后,我尝试使用一个更复杂的键: 返回: 这次,我的Java展示返回了: 我的PHP代码返回的哈希值不等于我的Java函数返回的值,而且我找不到原因。 有小费吗? 问题答案: 在您的PH

  • 问题内容: 情况: 我正在AngularJs中制作一个分配权限的应用程序。为了做到这一点,我有三个嵌套的ng-repeat。 第一循环 :显示PERMISSION GROUP 第二个循环 :对于每个权限组,显示“类别”。在此循环内执行一个函数,该函数将获取每个类别的所有子类别 第三循环 :显示子类别 问题: 问题在于第二个循环内函数的执行。 尝试1-ng-init: 在控制器中: 行为很奇怪。可能

  • 我仍在努力理解如何使用ScheduledExecutorService。我想要一个ScheduledExecutorService/ScheduledThreadPoolExecutor,它调度多个任务,并允许它们运行固定的时间。一旦不再调度任务,我就要关闭ScheduledThreadPoolExecutor。我试图通过编写一些测试来理解这是如何工作的。我尝试的第一件事是: 这工作得很好,我得到