我的漫漫程序之旅

          專注于JavaWeb開發
          隨筆 - 39, 文章 - 310, 評論 - 411, 引用 - 0
          數據加載中……

          Groovy之旅系列二(初識Groovy基本語法)

              昨天我們寫了一個HelloWorld,其實很簡單的.呵呵.
          現在我們打開Groovy控制臺輸入:
          123+45*67
          按Ctrl+R,結果就會輸出來了.

          Result: 3138

            現在我們來看看給變更賦值

          = 1
          println x

          = new java.util.Date()
          println x

          = -3.1499392
          println x

          = false
          println x

          = "Hi"
          println x

          Groovy在你需要用時才給變量賦予類型和值.

          這在Java里是不可想象的.

          List和Maps:

          我們來看看如何來聲明一個集合:
          myList = [1776-133990928734928763]

          和Java一樣,集合的索引是從0開始的.你可以這樣訪問:
          println myList[0]

          將會輸出:
          1776
          你能得到集合的長度
          println myList.size()
          將會輸出:
          6

          來看看Map怎樣聲明:
          scores = [ "Brett":100"Pete":"Did not finish""Andrew":86.87934 ]

          注意每個鍵的值類型都是不同的.
          現在我們訪問一下鍵為"Pete"的值,有兩種方式:
          println scores["Pete"]
          println scores.Pete

          會輸出:
          Did not finish
          Did not finish

          我們也能給scores["Pete"]賦予新值

          scores["Pete"= 3
          再次訪問scores["Pete"]
          println scores["Pete"]

          將會輸出3

          你也可以創建一個空集合和空Map:

          emptyMap = [:]
          emptyList 
          = []

          為了確保集合或Map是空的,你可以輸出一個它們的大小:
          println emptyMap.size()
          println emptyList.size()
          輸出是0

          現在我們來看看條件執行吧:
          amPM = Calendar.getInstance().get(Calendar.AM_PM)
          if (amPM == Calendar.AM)
          {
              println(
          "Good morning")
          }
           else {
              println(
          "Good evening")
          }


          這是一個簡單的判斷是上午還是下午的小程序,對于第一行你可以參考Groovy-doc.

          Bool表達式:

          myBooleanVariable = true
          當然還有一些復雜的bool表達式:
          * ==
          * !=
          * >
          * >=
          * <
          * <=
          來看看一些例子吧:
          titanicBoxOffice = 1234600000
          titanicDirector 
          = "James Cameron"

          trueLiesBoxOffice 
          = 219000000
          trueLiesDirector 
          = "James Cameron"

          returnOfTheKingBoxOffice 
          = 752200000
          returnOfTheKingDirector 
          = "Peter Jackson"

          theTwoTowersBoxOffice 
          = 581200000
          theTwoTowersDirector 
          = "PeterJackson"

          titanicBoxOffice 
          > returnOfTheKingBoxOffice  // evaluates to true
          titanicBoxOffice >= returnOfTheKingBoxOffice // evaluates to true
          titanicBoxOffice >= titanicBoxOffice         // evaulates to true
          titanicBoxOffice > titanicBoxOffice          // evaulates to false
          titanicBoxOffice + trueLiesBoxOffice < returnOfTheKingBoxOffice + theTwoTowersBoxOffice  // evaluates to false

          titanicDirector 
          > returnOfTheKingDirector    // evaluates to false, because "J" is before "P"
          titanicDirector < returnOfTheKingDirector    // evaluates to true
          titanicDirector >= "James Cameron"           // evaluates to true
          titanicDirector == "James Cameron"           // evaluates to true

          bool表達式對于if來說是非常有用的:
          if (titanicBoxOffice + trueLiesBoxOffice > returnOfTheKingBoxOffice + theTwoTowersBoxOffice)
          {
              println(titanicDirector 
          + " is a better director than " + returnOfTheKingDirector)
          }
          再看關于天氣的例子:
          suvMap = ["Acura MDX":"\$36,700""Ford Explorer":"\$26,845"]
          if (suvMap["Hummer H3"!= null)
          {
               println(
          "A Hummer H3 will set you back "+suvMap["Hummer H3"]);
          }

          ok,今天到此為止吧.

          posted on 2008-04-29 09:00 々上善若水々 閱讀(2515) 評論(4)  編輯  收藏

          評論

          # re: Groovy之旅系列二(初識Groovy基本語法)  回復  更多評論   

          繼續努力.希望出一個系列.
          2008-04-29 10:51 | java begginger

          # re: Groovy之旅系列二(初識Groovy基本語法)[未登錄]  回復  更多評論   

          初學者的例子
          2008-04-29 10:52 | BeanSoft

          # re: Groovy之旅系列二(初識Groovy基本語法)[未登錄]  回復  更多評論   

          準備學習Groovy,看來也沒那么復雜.
          2008-04-29 10:52 | shy

          # re: Groovy之旅系列二(初識Groovy基本語法)[未登錄]  回復  更多評論   

          不錯,歡迎到國內第一個基于Grails開發的并且討論Java&Grails技術網站
          www.javaread.com分享你的技術文章。
          2008-08-13 17:54 | javaread.com

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 磴口县| 临城县| 毕节市| 西昌市| 浦县| 陈巴尔虎旗| 龙泉市| 池州市| 灵武市| 陆河县| 噶尔县| 安泽县| 阿鲁科尔沁旗| 大埔区| 昆山市| 罗源县| 信丰县| 舟山市| 桑植县| 浦北县| 汉寿县| 兴仁县| 绥宁县| 新安县| 南昌县| 乌兰察布市| 铁岭市| 西安市| 合江县| 汪清县| 新源县| 昌乐县| 定州市| 老河口市| 高碑店市| 巴塘县| 泰和县| 长寿区| 且末县| 左云县| 宜宾县|