Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 如何使用lambda表达式或流生成映射的所有键和值的单个字符串_String_Lambda_Collections_Java 8_Java Stream - Fatal编程技术网

String 如何使用lambda表达式或流生成映射的所有键和值的单个字符串

String 如何使用lambda表达式或流生成映射的所有键和值的单个字符串,string,lambda,collections,java-8,java-stream,String,Lambda,Collections,Java 8,Java Stream,映射属性映射=新树映射 如何制作上述示例的单个字符串 输出是c、c2、c3、c4和FIRSTNAMe、LASTNAMe、'1111',ABCNAMe Predicate<String> predicate = "1111"::equals; String left = attributeMap.keySet().stream().map(String::toLowerCase).collect(Collectors.joining(",")); String

映射属性映射=新树映射

如何制作上述示例的单个字符串

输出是c、c2、c3、c4和FIRSTNAMe、LASTNAMe、'1111',ABCNAMe

    Predicate<String> predicate = "1111"::equals;
    String left = attributeMap.keySet().stream().map(String::toLowerCase).collect(Collectors.joining(","));
    String right = attributeMap.values().stream().map(x -> (predicate.test(x) ? "'" + x + "'" : x)).collect(Collectors.joining(","));

    System.out.println(left + right);

我也投票决定结束,你在这里没有表现出任何努力,所以不是关于这件事我试过了,但总是出错如果你试过了,那么问题和添加你试过的代码和你得到的错误。花些时间阅读和,以及如何提供一个可以使用的entryset@valamanoj是的,您可以使用entrySet并进行一些快速的缩减,例如,但我看不到benefitString.join、、attributeMap.keySet.toLowerCase+和+String.join、、attributeMap.values.replaceAll\\b\\d+\\b、,“$0”是,但我想对值进行更改,如添加单引号
    Predicate<String> predicate = "1111"::equals;
    String left = attributeMap.keySet().stream().map(String::toLowerCase).collect(Collectors.joining(","));
    String right = attributeMap.values().stream().map(x -> (predicate.test(x) ? "'" + x + "'" : x)).collect(Collectors.joining(","));

    System.out.println(left + right);