list的建立與元素獲取
class
listtest
//反向迭代 54321
list.reverseeach
println()
//如果關注迭代的索引和計數
list.eachwithindex
//閉包中的元素求和 15
def sum =
0 list.each
println sum
//[2, 4, 6, 8, 10]
def result =
//<< 操作符對映到left****f()方法
list.each
println result
//在集合中的每個元素上執行操作並返回乙個結果集合使用collect
//[3, 6, 9, 12, 15]
println list.collect
//find會對集合進行迭代,當閉包返回true則終止迭代(匹配第乙個),會將當前元素返回
//如果遍歷結束也找到,則返回null.以下輸出:4
println list.find
//以下輸出索引3
println list.findindexof
//findall 查詢所有返回的是物件[3, 4, 5]
println list.findall
}}
list的迭代、收集、查詢
def static
listiterator()
//反向迭代 54321
list.reverseeach
println()
//如果關注迭代的索引和計數
list.eachwithindex
//閉包中的元素求和 15
def sum =
0 list.each
println sum
//[2, 4, 6, 8, 10]
def result =
//<< 操作符對映到left****f()方法
list.each
println result
//在集合中的每個元素上執行操作並返回乙個結果集合使用collect
//[3, 6, 9, 12, 15]
println list.collect
//find會對集合進行迭代,當閉包返回true則終止迭代(匹配第乙個),會將當前元素返回
//如果遍歷結束也沒找到,則返回null.以下輸出:4
println list.find
//以下輸出索引3
println list.findindexof
//findall 查詢所有返回的是物件[3, 4, 5]
println list.findall
//30
println list.
collect()
.sum()
//inject對集合中的每個元素都呼叫閉包,0為初始值 。輸出:15
println list.
inject(0
)//連線集合中的每個元素,輸出:1,2,3,4,5
println list.
join
(","
)}
map
def static
mapbasic()
def static
mapcollect()
println
(wordcountmap)
def longwords = wordcountmap.count
//2 println "$"
//合併map
def map1 =
[p1:
100, p2:
200]
def map2 =
[p3:
300, p4:
400]
def map3 = map1 + map2
//[p1:100, p2:200, p3:300, p4:400]
println "$"
//取交集
def map4 =
[p1:
100, p2:
200, p3:
300, p4:
400, p5:
500]
def map5 =
[p4:
400, p5:
500, p6:
600, p7:
700]
def map6 = map4.
intersect
(map5)
//[p4:400, p5:500]
println "$"
}
def static
iterator()
println()
//迭代 輸出: aa : jannal ;2 : lisi ;3 : wangwu ;[aa1, 21, 31]
map.each
println()
//[aa1, 21, 31]
println map.collect
//找到即返回該map的key和value aa=jannal
println map.find
//找到所有匹配的 [2:lisi, 3:wangwu]
println map.findall
//不想得到元素,只是確定map中是否有任何元素滿足條件用any
// 輸出:true
//any會查詢至少乙個滿足給定條件
println map.any
//是否所有的元素都滿足條件 輸出:false
println map.every
}
Groovy集合型別
groovy中有3種集合型別,分別是列表list 對映map 區間range 1 列表 list的初始化,直接在 中直接寫入初始的資料即可 def list1 1,2,3 list支援的運算子和方法 def list2 list1 2 1,2,3,1,2,3 list2.unique 1,2,3 l...
Groovy 學習筆記 一
1.關於字串 簡單字串可以用單引號和雙引號 但如果使用 gstring,則必須使用雙引號 比如 foo,hello world 多行字串則可以使用 3 個雙引號 例如 def text hello there how are you today?如果對這個 text 進行輸出 會發現輸出是按原樣式輸...
Groovy閉包筆記
1.最後一行將會作為返回值 2.對於map型別,機引數列表中所有的map實參並組成map傳遞給第乙個形參。3.閉包可以設定預設值 4.it可以在有且僅有乙個未顯示宣告的引數時使用 5.閉包呼叫的標準寫法是 closurename.call 6.def定義的變數對 binding.variables....