一、數組的定義及賦初值
在Groovy語言中,數組的定義和Java語言中一樣。
def a = new String[4]
def nums = newint[10]
def objs = new Object[3]
然後賦值也一樣:
a[0] = 'a'
a[1] = 'b'
a[2] = 'c'
a[3] = 'd'
所不同的在於在數組定義的時候賦初值。
在Java語言裡,對一個字符串數組這樣定義:
String[] strs = new String[]{'a','b','c','d'};
而在Groovy語言中,對一個字符串數組則需要這樣定義:
def strs = ['a','b','c','d'] as String[]
二、數組的遍歷
在Groovy語言中,對數組的遍歷方法很多,常用的是使用each方法:
a.each{
println it
}
當然,你也可以使用增強for循環:
for(it in a)
{
println it
}
你還可以使用如下的遍歷方式:
(0..<a.length).each{
println a[it]
}
三、數組和List之間的轉化
List對象轉化成數組對象非常簡單:
List list = ['a','b','c','d']
def strs = list as String[]
println strs[0]
絕對沒有Java語言那麼復雜:
List list = new ArrayList();
list.add("1");
String[] strs = (String[])list.toArray(new String[0]);
System.out.println(strs[0]);
而從數組轉化成List對象也非常簡單:
def strs = ['a','b','c','d'] as String[]
List list = strs.toList()
println list.get(0)
你也可以這樣轉化:
def strs = ['a','b','c','d'] as String[]
List list = strs as List
println list.get(0)
而在Java語言中,你需要這樣轉化:
List list = Arrays.asList(strs)