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

如何从具有字符串属性的对象映射中获取一组字符串

郎增
2023-03-14

我需要一套<代码>

帐户类别具有以下属性:

private String number;
private String owner;
private double balance;
private boolean active = true;

到目前为止,我的解决方案如下:

public Set<String> getAccountNumbers() {
    return new HashSet<String>(accounts.values().stream().filter(Account::isActive));
}

我试过施法,但似乎不起作用。有人能告诉我,从现在开始我如何访问属性号吗?

共有1个答案

呼延鹏云
2023-03-14

您必须应用映射才能转换账户流stream

您尝试将流传递给<code>HashSet</code>的构造函数是不正确的(它需要<code>Collection</code>,而不是<code>stream</code>),并且是不必要的。

注意:没有终端操作的流(如< code>collect 、< code>count 、< code>forEach等)。)永远不会被处决。< code>map和< code>filter称为中间操作。

public Set<String> getAccountNumbers() {
    return accounts.values().stream()    // Stream<Account>
            .filter(Account::isActive)
            .map(Account::getNumber)     // Stream<String>
            .collect(Collectors.toSet());
}

要了解更多关于流的信息,请看一下本教程

 类似资料:
  • 我正在做一个项目,在那里用户可以写其他用户的邮件。邮件类当前如下所示: 现在,问题是,我需要将所有邮件保存到. yml用户数据文件中。对我来说,最简单的方法是首先将每封邮件转换为字符串,然后将所有邮件保存到

  • 问题内容: 我得到的输出为 控制器中的日期Mon Dec 31 IST 2012 请提出一种以格式输出日期的方法。需要以日期格式而不是字符串形式输出,以便将输出存储在mysql db的字段中 问题答案: 声明后 您有一个对象, 可以将其按原样存储在mysql DB中 (列类型:datetime)。 但是,在打印时,它默认为实现。我认为您希望获得类似Date @的输出,但是toString以用户可读

  • 我有一个Java的应用程序,我正在使用JSoup库进行一些网络抓取。我正在使用该库,它返回了其中6个字符串的集合。我需要将这6个随机字符串映射到对象的属性。我知道字符串的顺序,以及哪个数字映射到哪个属性。我觉得我的方法不是处理这个问题的最佳方法。感觉很失败,易读性很差,我只是想知道是否有更好的方法来做到这一点。我在考虑单独使用枚举或其他东西。长话短说,这是一个代码片段。感谢您的任何帮助。

  • 问题内容: 我有一个JSON响应,我需要将对应的JSON字符串映射到特定的Response类,是否有任何工具或框架可以做到这一点。 响应类为: Json响应字符串为{“ 0”:{“ 0”:“ Rockey”,“ 1”:“ John”}} 我将Apache CXF Framework与Jettison一起使用,因为JSON Provider还使用JAXB将数据连接到低带宽客户端。 请注意,我要将数字

  • 我正试图利用谷歌电子表格(谷歌脚本)中的地图功能,使用API从Bittrex获取我的帐户硬币余额。这是我的JSON对象: 理想情况下,我希望根据结果中的键和使用每个对象数据的基础行自动填充标题行。我看到了spme解决方案如何为每种或更复杂的方式使用。但我想这可以通过映射来实现。下面是我如何映射顶行,但不知道如何映射值: 谷歌电子表格中的预期输出为