如何将String减少为一个整数来汇总其字符

时间:2014-07-24 11:24:01

标签: groovy

我想要一个字符串,例如" 1234"并将其转换为表示所有字符总和的整数。

我认为将String作为字符列表并进行reduce / inject处理可能是最简单的机制。但是,在我的所有尝试中,我都未能成功地使语法正确。

我尝试了这些方面没有成功的事情。

    int sum = myString.inject (0, { Integer accu, Character value ->
        return accu + Character.getNumericValue(value)
    })

你能帮我确定一个简单的语法来解决这个问题吗(我可以像java那样用循环等详细解决它)

1 个答案:

答案 0 :(得分:3)

尝试:

"1234".collect { it.toInteger() }.sum()

@dmahapatro解决方案

"1234".toList()*.toInteger().sum()