###閉包與字串
string str = 『2 + 3 = 5,abc』
println str.each
println str.find
def list = str.findall
println list.toliststring() // [2, 3, 5]
println str.any // true , any 只要符合條件就返回true,否則返回false
println str.every // false , every 表示str中每個字元都要滿足條件返回true,否則返回false
// [2, , +, , 3, , =, , 5, ,, a, b, c] , collect 對字串中每個字元進行閉包中的處理,返回處理後字元組成的集合list
println str.collect .toliststring()
###閉包more
// 閉包關鍵變數 this 、 owner 、 delegate 都是指向其最近的類
def closure =
closure.call()
class person
def static say()
classclosure.call()
}def cc =
def nostatic()
classclosure.call()
}}person.classclosure.call() // 呼叫內部類中的靜態成員閉包
person.say() // 呼叫內部類中的靜態函式
person per = new person()
per.cc.call() // 非靜態成員 呼叫
per.nostatic()
def outclosure =
innerclosure.delegate = per // 修改innerclosure閉包的delegate物件,指向person例項物件
innerclosure.call()
}outclosure.call()
// 在一般情況下,閉包的 this owner delegate 值都一樣
// 在閉包的閉包中, this 與 owner 值不一樣,owner 與 delegate 的值一樣 , 如果修改了delegate值, owner 就與 delegate 值不一樣了
// 閉包的 this 、 owner 的值是不能被修改的
// 閉包委託策略
class student
}class teacher
def stu = new student(name: 'hj') // new乙個物件,並給name成員賦值
def tea = new teacher(name: 'some')
println stu.pretty.call() // my name is hj
stu.pretty.delegate = tea
println stu.pretty.call() // my name is hj
stu.pretty.resolvestrategy = closure.delegate_only // 修改閉包的委託策略(需要這兩行**一起作用才行),預設值為 closure.owner_first
// 當修改的閉包的委託策略為 delegate_first,如果在teacher物件中沒有與student物件的pretty閉包中的name變數一致的變數,那麼pretty.call()時還是會取student物件中的name的值
// 當修改的閉包的委託策略為 delegate_only,如果teacher物件中沒有name成員,那麼程式會報錯
println stu.pretty.call() // my name is some
Gradle自動化構建 十 Task
jge tfor matt ime hjen dtim e 用 時 用時 hjgetf orma ttim e hj endt ime 用時 決定task執行順序 dependson強依賴方式 通過task輸入輸出指定 通過api指定執行順序 轉換.dot到task時序圖 graphviz depe...
Gulp 自動化構建
use gulp 官網 編譯 sass 合併優化壓縮 css 校驗壓縮 js 優化新增檔案指紋 md5 元件化頭部底部 include html 實時自動重新整理 gulp是前端開發過程中對 進行自動化構建的利器。它不僅能對資源進行優化,而且在開發過程中能夠通過配置自動完成很多重複的任務,讓我們可以...
自動化構建Jenkins fastlane
參考 自動化查詢描述檔案 安裝之前 對應的uuid 參考鏈結 檢視簽名檔案,teamid 描述檔案路徑 相互關係 命令列提示沒有登入 jenkins的工作區目錄 jenkins環境配置 同道中人 shell 報錯倉庫位址 配的那個token不是用來登入git倉庫的原始碼管理的憑據和 api的憑據不是...