首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

Groovyb脚本速职教程

2012-11-01 
Groovyb脚本速成教程Groovyb脚本速成教程 1内容简介主要介绍了groovy的常用语法,以便快速上手应用. 2语法

Groovyb脚本速成教程
Groovyb脚本速成教程
1       内容简介
主要介绍了groovy的常用语法,以便快速上手应用.

2       语法介绍
2.1    屏幕输出
println “Hello world!”
println “Hello” + “ world!”
2.2    变量定义
class HelloWorld {
  staticvoid main(args) {
   
      def myString = new String("test String")
       def myObject = new Object()
      int myInt = 8   
      myObject = 3
      
       println"myString=" + myString
       println"myObject=" + myObject
       println"myInt=" + myInt
}
}

2.3    类定义,函数定义
class HelloWorld {
   
    defvoidtest(){
       println"this is test func"
    }
   
    def String getString(String input){
       println"input=" + input
       return"hello," + input
    }
  staticvoid main(args) {
       def hw = new HelloWorld()
       hw.test()
       println hw.getString("Liuyou")
    }
}



2.4    list用法
class HelloWorld {
   
  staticvoid main(args) {
   
  //ArrayList可以动态增加大小
  def arrayList = new ArrayList()
  arrayList[0] = "dog"
  arrayList[1] = "cat"
  arrayList[2] = "bird"
  for(l in arrayList){
       println l + " "  
  }
  //list,不可以动态增加大小
  def list = [ "dog", "cat", "bird" ]
    for(l in list){
       println l + " "  
    }
  //list array
  def lists = [[ "liuyou", "22", "M"],["liudehua", "33", "M"]]
    for(l in lists){
       println l[0] + "-" + l[1] + "-" + l[2]
    }
  for(l in lists){
       for(e in l){
          println e
       }
    }
}
}  
 

2.5    map用法

class HelloWorld {
   
  staticvoid main(args) {
       //显示定义map
       def map = new HashMap()
       map.put("ID", 12345)
       map.put("name", "Liuyou")
       map.put("email", "you.liu@alcatel-sbell.com.cn")
       println map.get("ID") + "/" + map.get("name") + "/" + map.get("email")
       //隐示定义map
       def map2 = ["email":"you.liu@alcatel-sbell.com.cn", "name":"Liuyou", "ID":12345]
       println map.get("ID") + "/" + map.get("name") + "/" + map.get("email")
    }
}



2.6    逻辑语句
2.6.1   if…else…
class HelloWorld {
   
  staticvoid main(args) {
       def s = "1234"
       if(s == "1234")   println"yes,it is 1234"
      
       def n = 1234
       if(n == 123) println"yes, n is 123"
       elseif(n == 12) println"yes, n is 12"
       elseif(n == 1234)   println"yes, n is 1234"
       elseprintln"yes, n is null"
    }
}


2.6.2   switch…case…
class HelloWorld {
   
  staticvoid main(args) {
       def s = "1234"
       switch(s){
       case"1":
           println"1";
           break;
       case"2":
           println"2";
           break;
       case"1234":
           println"1234"
           break;
       default:
           println"default"
           break;
       }
    }
}


2.6.3   while循环
class HelloWorld {
   
  staticvoid main(args) {
       int n = 10
       while(n){        
           println"n=" + n
           n --
       }
    }
}

2.6.4   for循环
class HelloWorld {
   
  staticvoid main(args) {
       def n = [10,20,30]
       for(e in n){        
           println"e=" + e
       }
    }
}





2.7    try…catch…异常语句
class HelloWorld {
   
    defvoid testException(){
       try{
           def n = 0;
           def m = 2;
           def l = m/n
       }catch(Exception e){
           println e.toString()
       }
    }
    defvoid testThrow(){
       thrownew java.lang.ArithmeticException()
    }

  staticvoid main(args) {
       def hw = new HelloWorld()
      
       //除法零异常
       hw.testException()
       //主动抛出异常
       try{
           hw.testThrow()
       }catch(ArithmeticException e){
           println e.toString()
       }
    }
}

热点排行