繁体   English   中英

如何使用 Java 8 Streams 迭代键值?

[英]How to using Java 8 Streams to iterate over key values?

我想使用 java 8 流为以下伪代码编写程序

如果值包含“输入”,则从属性文件中读取条目返回该字段我有一个从属性文件中读取的实用程序。

financialProducts=FX,EQUITY
FX=ABC,LMN,XYZ
EQUITY=OPM,PWZ,TYU

如果我必须阅读金融产品并在迭代 FX 值时迭代 FX、EQUITY,如果值包含 PWZ,我必须返回 FX 否则迭代 EQUITY 并在其中查找值 PWZ。

这是我到目前为止

 String products = UtlityToReadValueFromProperties.get("financialProducts"); 
 List<String> list = Arrays.asList<names.split(","); 
 String result = list.stream().map(item -> UtlityToReadValueFromProperties .get(item)).filter(value -> values.contains("OPM").toString();
// This return OPM,PWZ,TYU, however, I want the code to return EQUITY

尝试使用此流:

 String result = list.stream().filter(item -> UtlityToReadValueFromProperties.get(item).constains("OPM")).toString();

首先,您正在使用您的列表创建一个流,然后我们为每个项目过滤抛出值,如下所示:

  1. 我们使用UtlityToReadValueFromProperties.get获取属性的值。
  2. 我们检查给定值(此处为“OPM”)是否存在于所选属性的值之间。
  3. 如果属性值中存在“OPM”,则将与过滤结果列表一起返回项目名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM