More Related Content
Similar to Groovy Intro (20)
More from Ocean Dong (11)
Groovy Intro
- 7. Copyright © 2001-2006 Infor Global Solutions 于是 Groovy 诞生了 Groovy 使得 Java 更“ 语言 ” Java 的 强大技术 类 Ruby 等动态语言 的轻盈语法 Groovy
- 9. Copyright © 2001-2006 Infor Global Solutions 别在乎类型 Java: String name = “abc”; Groovy: String name = “abc” def name name = “abc”
- 10. Copyright © 2001-2006 Infor Global Solutions “ 直接”访问属性 class Person { private String name; public Person(String name) {this.name = name;} public String getName() {return name;} } Person person = new person(“ocean”) return person.getName(); class Person { String name; } Person person = new Person(name:”ocean”) return person .name
- 11. Copyright © 2001-2006 Infor Global Solutions 了不起的字符串 firstName = “ocean” lastName = “dong” message = “My name is $ firstName $ lastName” person = new Person() person.setName(“ocean”) message = “My name is ${ person.name } ” Message = “ ““ Hi, My name is ${person.name} ””” def pattern = / hello.* /
- 12. Copyright © 2001-2006 Infor Global Solutions 集合:简单类型而已 List: def aList = [1, 2, 3] def aList = [10, “abc”, new Date()] Map: def aMap = [a:1, b:2] Range: def aRange = ‘a’..’z’ def numbers = 0..<10
- 13. Copyright © 2001-2006 Infor Global Solutions 可爱的操作符 [1, 2, 3] << 4 def aMap = [a:1, b:2] println aMap . a println aMap [ a ] “ hello world” =~ /hello.*/ println person ? .wife ? .name
- 14. Copyright © 2001-2006 Infor Global Solutions 万物皆可判断 If(1) assert 1 def aList = [1, 2, 3] If(aList) assert aList def person If(person) assert !person
- 15. Copyright © 2001-2006 Infor Global Solutions 四通八达的 Switch switch(10) { case 0: case 0..9: case [8,9,11]: case Float: case {it % 3 == 0}: case ~/../: default: }
- 16. Copyright © 2001-2006 Infor Global Solutions 透明的集合 ArrayList names = new ArrayList() for(Person person : persons) { names.add(person.getName()); } return names; def persons = [new Person(”ocean”), new Person(”coco”)] assert persons .name == [“ocean”, “coco”] assert persons *.getGender() == [“Male”, “Female”]
- 17. Copyright © 2001-2006 Infor Global Solutions Closure: 终极代码重用 ArrayList persons = … for(Person person : persons) { System.out.println(person.getName()); } persons.each {it -> println it.name }
- 18. Copyright © 2001-2006 Infor Global Solutions 远远不止这些哦。。。 Builder Meta Programming Groovylet GSP GRails Scriptom Griffon GMaven Gant GSQL GORM Tellurium http://groovy.codehaus.org/
Editor's Notes
- Introduce wiki page
- Introduce wiki page
- Introduce wiki page
- Introduce wiki page