日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【Groovy】map 集合 ( map 集合操作符重载 | - 操作符重载 | 代码示例 )

發布時間:2025/6/17 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Groovy】map 集合 ( map 集合操作符重载 | - 操作符重载 | 代码示例 ) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 一、map 集合 " - " 操作符重載
  • 二、完整代碼示例





一、map 集合 " - " 操作符重載



對 map 集合 使用 " - " 操作符 , 相當于調用了 map 集合的 minus 方法 , 該方法傳入 222 個參數 :

  • Map<K,V> self 參數 : 相當于 " - " 操作符左側的值 ;
  • Map removeMe 參數 : 相當于 " - " 操作符右側的值 ;

該方法的作用是 , 創建一個新的 map 集合 , 該集合中 存放 Map<K,V> self 集合 中刪除了 Map removeMe 集合 條目之后的 鍵值對 條目 ;


map 集合 minus 函數原型 :

/*** 創建一個由第一個 map集合 的條目減去給定 map集合 的條目組成的新的 map 集合。** @param self map 集合* @param removeMe 要從 map 集合中刪除的鍵值對* @return the resulting map* @since 1.7.4*/public static <K,V> Map<K,V> minus(Map<K,V> self, Map removeMe) {final Map<K,V> ansMap = createSimilarMap(self);ansMap.putAll(self);if (removeMe != null && removeMe.size() > 0) {for (Map.Entry<K, V> e1 : self.entrySet()) {for (Object e2 : removeMe.entrySet()) {if (DefaultTypeTransformation.compareEqual(e1, e2)) {ansMap.remove(e1.getKey());}}}}return ansMap;}



二、完整代碼示例



代碼示例 :

class Test {static void main(args) {// 創建鍵值對// 鍵 Key 可以不使用引號 , 可以使用單引號 '' , 也可以使用雙引號 ""def map = [J:"Java", "K":"Kotlin", 'G':"Groovy"]// " + " 操作符重載def map2 = map + [S:"String"]// 打印結果 [J:Java, K:Kotlin, G:Groovy]println map// 打印結果 [J:Java, K:Kotlin, G:Groovy, S:String]println map2// " - " 操作符重載map2 = map - [J:"Java"]// 打印結果 [J:Java, K:Kotlin, G:Groovy]println map// 打印結果 [K:Kotlin, G:Groovy]println map2} }

執行結果 :

[J:Java, K:Kotlin, G:Groovy] [J:Java, K:Kotlin, G:Groovy, S:String] [J:Java, K:Kotlin, G:Groovy] [K:Kotlin, G:Groovy]

總結

以上是生活随笔為你收集整理的【Groovy】map 集合 ( map 集合操作符重载 | - 操作符重载 | 代码示例 )的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。