我有一個簡單的方法,它查看從窗體通過的請求參數並將值顯示在一個字符串中。這種方法工作得很好,但是當一個空值從形式來通過它顯示是這樣的:在空值上使用連接方法的集合
beef:mozzarella::milk
你可以看到,有一個額外的「:」如果值是空的我怎麼刪除?出於某種原因檢查v.size> 0是否無效。有任何想法嗎?
final String[] products = ["meat", "cheese", "nuts", "dairy"]
String generateProducts() {
return request.requestParameterMap.findAll { k, v -> products.contains(k) }
.collect { k, v -> v.size() > 0 ? v[0] : ""
}.join(":")
}
謝謝@tim_yates,但似乎沒有多餘?有沒有辦法更新我的v.size()檢查? –
'request.requestParameterMap.findAll {k,v - > v && products.contains(k)} .join(「:」)'。你永遠不會讓我讀這個問題。 :P – dmahapatro
@DelmonYoung你可以做什麼dmahapatro超級暗示......我很喜歡前者的可讀性,但後者的簡潔性 –