首页 > 解决方案 > 如何在groovy中动态附加逗号分隔值

问题描述

我有逗号分隔的值,我想迭代并动态附加值,如下所示:

def statusCode = '1001,1002,1003'

输出应如下所示:

[item][code]=1001|[item][code]=1002|[item][code]=1003

如果 statusCode 只有两个值。例如:

def statusCode = '1001,1002'

那么输出应该是

[item][code]=1001|[item][code]=1002

我尝试了类似下面的方法,因为我是 groovy 的新手,不知道如何用一些最佳方法来实现这一点:

    def statusCode= '1001,1002,1003'
    String[] myData = statusCode.split(",");
    def result
    for (String s: myData) {
        result <<= "[item][code]="+s+"|"
    }
    System.out.println("result :" +result);

标签: groovy

解决方案


您可以使用collectandjoin来简化代码:

def result = statusCode.split(',').collect{"[item][code]=$it"}.join('|')

那返回[item][code]=1001|[item][code]=1002|[item][code]=1003


推荐阅读