java - 了解 Groovy 中的 findAll

标签 java groovy

考虑以下代码:

String emptyString = '''

        '''
println "After trimming empty string has size: " + emptyString.trim().size()
println "Number of non empty elements in array: " + ([emptyString, 'kshitiz'].findAll({ it.trim() != 0}).size())

我期望输出为1。但是输出是:

After trimming empty string has size: 0
Number of non empty elements in array: 2

我怀疑我可能在这里遗漏了一些基本的东西,但不太清楚是什么。

最佳答案

您的代码应该是:

 String emptyString = '''

    '''
 println "After trimming empty string has size: " + emptyString.trim().size()
 println "Number of non empty elements in array: " + ([emptyString, 'kshitiz'].findAll({ it.trim().length() != 0}).size())

注意 length() 方法的使用。您没有比较字符串的长度。

关于java - 了解 Groovy 中的 findAll,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35179198/

相关文章:

调试 groovy 脚本 elasticsearch

groovy - 为Groovy安装HTTPBuilder

java - Netty通过一个 channel 写入多条消息

java - 使用模拟休息 Controller 方法进行 Junit 测试

java - 在java中运行没有线程的计时器

groovy - 如何制作 Groovy ConfigObject 的深层复制?

java - 安装 JMeter 的问题

java - OrientDB中如何确认文档是否被删除?

java - 读取 CSV 文件并使用 Grails/Groovy 将结果放入 map 中

grails - 在Grails应用程序中的每个 Controller 方法上都会抛出NPE