为了账号安全,请及时绑定邮箱和手机立即绑定

如何将一个字符串映射到流中的另一个字符串?

如何将一个字符串映射到流中的另一个字符串?

慕田峪7331174 2022-07-27 21:34:12
返回以下流内字符串时我遇到了一个大问题。你会帮忙吗?这是我的清单:List<String> dest = Arrays.asList(  "bleble bleble 2000",  "WAW HAV 1200",  "xxx yyy 789",  "WAW DPS 2000",  "WAW HKT 1000");我怎样才能返回这样的字符串: //to HKT - price in EUR:    4300//to HAV - price in EUR:    5160//to DPS - price in EUR:    8600在直播?enter codedouble ratePLNvsEUR = 4.30;List<String> result = dest    .stream()    .filter(x -> x.startsWith("WAW"))    //.map() <- how to change "WAW HAV 1200" into "HAV - price in EUR:  5160"    .collect(Collectors.toList());for (String r : result) System.out.println(r); 这对于 (..) 是必需的。
查看完整描述

1 回答

?
慕后森

TA贡献1802条经验 获得超5个赞

您可以使用map()拆分字符串,并获取所需的元素(第二个和第三个):


List<String> result = dest

        .stream()

        .filter(x -> x.startsWith("WAW"))

        .map(x -> {

            String[] row = x.split(" ");


            return String.format("to %s - price in EUR:    %s",

                    row[1],

                    Integer.parseInt(row[2]) * ratePLNvsEUR);

        })

        .collect(Collectors.toList());


查看完整回答
反对 回复 2022-07-27
  • 1 回答
  • 0 关注
  • 86 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号