根据Groovy 文档:
范围允许您创建连续值的列表。这些可以用作列表,因为 Range 扩展了 java.util.List。
但是,就我而言,我需要列表以字符串形式结束,包括方括号。我尝试了以下方法:
def myRange = 1..5
def myList = [1, 2, 3, 4, 5]
// this passes
assert myRange == myList
// both of the following fail!
assert myRange.toString() == myList.toString()
assert myRange.subList(0, 5).toString() == myList.toString()
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
扩展某些东西并不意味着它toString会是一样的。
如果您必须获得与列表相同的输出,请尝试
myRange.toList().toString()
Run Code Online (Sandbox Code Playgroud)
或者
"[${myRange.join(',')}]"
Run Code Online (Sandbox Code Playgroud)
或者(添加评论作为您的简单答案)
assert (1..5).toListString() == "[1, 2, 3, 4, 5]"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7144 次 |
| 最近记录: |