How can I declare a string array in Groovy? I am trying as below but it is throwing an error
def String[] osList = new String[]
No expression for the array constructor call at line:
What am i doing wrong?
First of: welcome to SO!
You have a few options for creating arrays in groovy.
But let's start with what you've done wrong.
def String[] osList = new String[]
You used both def and String[] here.
Def is an anonymous type, which means that groovy will figure out which type it is for you. String[] is the declared type, so what groovy will see here is:
String[] String[] osList = new String[]
which obviously won't work.
Arrays however need a fixed size, which needs to be given as an argument to the creation of the Array:
Type[] arr = new Type[sizeOfArray]
in your case if you'd want to have 10 items in the array you would do:
String[] osList = new String[10]
if you do not know how many Strings you will have, use a List instead. An ArrayList will do for this in most cases:
List<String> osList = new ArrayList<>()
now you can add items by calling:
osList.add("hey!")
or using groovy's list-add operator:
osList << "hey!"
For further issues you should refer to groovy's official documentation and see if you can't find the solution yourself!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With