如何在 Groovy 中声明字符串数组?我正在尝试如下但它抛出一个错误
def String[] osList = new String[]
No expression for the array constructor call at line:
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
首先:欢迎来到SO!
在 groovy 中创建数组有几个选项。
但让我们从你做错了什么开始。
def String[] osList = new String[]
Run Code Online (Sandbox Code Playgroud)
您在这里同时使用了def和String[]。
Def 是一个匿名类型,这意味着 groovy 会找出适合你的类型。String[]是声明的类型,所以groovy在这里看到的是:
String[] String[] osList = new String[]
Run Code Online (Sandbox Code Playgroud)
这显然行不通。
然而,数组需要固定的大小,需要将其作为创建数组的参数给出:
Type[] arr = new Type[sizeOfArray]
Run Code Online (Sandbox Code Playgroud)
在你的情况下,如果你想在数组中有 10 个项目,你会这样做:
String[] osList = new String[10]
Run Code Online (Sandbox Code Playgroud)
如果您不知道将有多少个字符串,请使用列表。在大多数情况下,ArrayList 可以做到这一点:
List<String> osList = new ArrayList<>()
Run Code Online (Sandbox Code Playgroud)
现在您可以通过调用添加项目:
osList.add("hey!")
Run Code Online (Sandbox Code Playgroud)
或使用 groovy 的列表添加运算符:
osList << "hey!"
Run Code Online (Sandbox Code Playgroud)
更多问题你应该参考groovy的官方文档,看看你自己是否找不到解决方案!
| 归档时间: |
|
| 查看次数: |
30959 次 |
| 最近记录: |