是否有可能在groovy中有一个字符串为空而不是null?

时间:2018-04-13 20:51:53

标签: groovy

我知道这可能对我非常不熟悉,但我需要能够在数组中存储一个空字符串。基于我发现的内容,似乎是这样:string = ''最终与此string = null相同。

这是真的还是我错过了什么?

如果是,如何初始化字符串并在groovy中将其设为空?

2 个答案:

答案 0 :(得分:2)

Groovy不认为''等于null

'' == null
===> false

也许你在布尔表达式的上下文中读到它,其中两者是等价的(if(null)if('')都计算为false)。

您可以通常的方式声明字符串:

String str = ''
def str = ''

答案 1 :(得分:2)

您可以向数组添加空字符串,您是否尝试根据使用the groovy truth的数组值执行某些逻辑?

def myArr = new String[3]
myArr[0] = 'hello'
myArr[1] = ''
myArr[2] = null
myArr.each{ println it }
// prints
hello

null  
// whereas the following...
myArr.each{ if (it) println it }​ 
// prints
hello
// and nothing else