First they ignore you
          then they ridicule you
          then they fight you
          then you win
              -- Mahatma Gandhi
          Chinese => English     英文 => 中文             
          隨筆-221  評論-1047  文章-0  trackbacks-0
          人們對Java7中是否應該添加Closure這一特性鬧得沸沸揚揚,由于在下習慣了在Groovy中用Closure優雅地進行編程,深深體會到Closure的強大,始終不理解為什么他們要為添加這么強大的特性而爭論不休。出于好奇,我搜了一下這Java中可能出現的褒貶不一的Closure,當我看到提議中的Closure的語法,有點吃驚,為何?看看代碼的復雜程度就知道了:

          變量聲明:
          { int ,String => Number? throws ?IOException}?xyzzy;


          將求和功能賦值給變量plus:
          { int , int => int }?plus? = ?{ int ?x,? int ?y? => ?x + y};


          循環遍歷map中的entry:
          < K,V, throws ?X >
          void ? for ?eachEntry(Map < K,V > ?map,?{K,V => void ? throws ?X}?block)
          ????????
          throws ?X?{
          ????
          for ?(Map.Entry < K,V > ?entry?:?map.entrySet())?{
          ????????block.invoke(entry.getKey(),?entry.getValue());
          ????}
          }


          Java5中添加的Generic(泛型)就已經蠻麻煩了,東個尖括號< >西個尖括號< >。Java7也不甘示弱,東個大括號{ }西個大括號{ }??磥鞪ava擁有巨斧后著實會強大許多,而Java程序員也不得不練就能揮舞巨斧的臂膀和身軀。同道們,讓我們一起修煉吧!

          參考資料:Closures for the Java Programming Language (v0.5)
          附:Groovy輕松入門——Grails實戰之GORM篇

          posted on 2007-04-09 16:29 山風小子 閱讀(6058) 評論(21)  編輯  收藏 所屬分類: Java
          主站蜘蛛池模板: 临朐县| 高碑店市| 阜康市| 阿鲁科尔沁旗| 临沭县| 保定市| 府谷县| 环江| 桑植县| 外汇| 德惠市| 托克逊县| 萝北县| 平顶山市| 潞西市| 泽普县| 运城市| 柏乡县| 邮箱| 大同市| 青龙| 合水县| 且末县| 巴南区| 长汀县| 新巴尔虎右旗| 休宁县| 宁安市| 克拉玛依市| 灵武市| 五指山市| 桐柏县| 盐池县| 于都县| 延长县| 买车| 滦南县| 永康市| 铜梁县| 丹巴县| 藁城市|