【Groovy】 Groovy笔记】的更多相关文章

原文地址:[Groovy] Groovy与Java的区别(一)作者:langyizhao 因为Groovy可以用Java的所有功能(虽然JVM不同的时候可能会比较麻烦,比如在Android上),所以Groovy与Java的区别可以说就是Groovy的所有特点与优点了. 1. 自动import以下类: java.io.* java.lang.* java.math.BigDecimal java.math.BigInteger java.net.* java.util.* groovy.lang.…
在上一篇文章中我们主要学习了如何搭建Groovy开发环境,为我们的Groovy之旅做好了准备工作,不知道你是否准备好了?接下来我们就一起看看Groovy与我们熟悉的Java有什么异同. Groovy是轻量级的Java,它与Java的区别主要有六点,接下来我们一一讲解. 一:return语句和分号都是可选的. //Groovy Code def int add(a, b) { a + b } println add(1, 2) 控制台输出: 3 二:方法和类默认是public的. 三:?.操作符只…
1.1 安装Groovy Groovy主页:http://www.groovy-lang.org 确保本地系统安装了Java 1.1.1 在Windows系统上安装Groovy 1.创建环境变量GROOVY_HOME,其值为Groovy的目录(如:C:\programs\groovy\groovy-2.1.0). 2.将%GROOVY_HOME%\bin添加到path中. 3.确认下环境变量JAVA_HOME的值是否指向JDK的位置. 4.在命令行窗口输入groovy -v,确保报告的是正确的版…
  本篇分享讲展示如何在Groovy中读取CSV文件.   我们要读取的CSV文件foo.csv的内容如下:   Groovy代码如下: //import packages import java.io.File // use @Grab() to download CSV package @Grab('org.apache.commons:commons-csv:1.2') import static org.apache.commons.csv.CSVFormat.RFC4180 // ge…
1.respondsTo方法判断对象是否存在指定方法 interface IHelp{ void helpMoveThings() } class Man implements IHelp{ void helpMoveThings(){ println 'Man help move things' } } class WoMan implements IHelp{ void helpMoveThings(){ println 'WoMan help move things' } } class…
1.def和in是关键字 2.==映射到了equals() 中,如果有Comparable接口实现,则优先compareTo str1 = 'hello' str2 = str1 str3 = new String('hello') str1 == str2 // true str1.is(str2) // true str1 == str3 // true str1.is(str3) // false 3.传递闭包 class Calibrator{ Calibrator(calcBlock)…
1.枚举enum enum CoffeeSize{ SHORT, SMALL, MEDIUM, LARGE, MUG } def orderCoffee(size){ print "Coffee order received for size $size:" switch(size){ case [CoffeeSize.SHORT, CoffeeSize.SMALL]: println 'Conscious' break; case CoffeeSize.MEDIUM..CoffeeS…
1.判断字符串为null或空字符串 def str = null if(str) println 'str is not null' else println 'str is null' str = '' if(str) println 'str is not null' else println 'str is null' /*output str is null str is null */ 2.集合是否为空或Count ==0 list = null if(list) println 'l…
1.单个委托方法的实现 button.addActionListener( { println 'Implement ActionListener' } as ActionListener ) 2.实现接口中的多个方法:使用映射,以每个方法的名字作为键,以方法对应的代码块作为键值,使用:分割方法名和代码块 handleFocus = [ focusGained : {msgLabel.setText("Good to see you")}, focusLost : {msgLabel.…
1.方法返回多个结果:返回数组,将多个变量逗号隔开,放在左侧圆括号中 def splitName (fullName) { fullName.split(' ') } def (firstName, lastName) = splitName('Tom Smith') println "$lastName, $firstName" /* output Smith Tom */ 2.交换变量:将欲交换的变量放在左侧圆括号内,右侧中括号相反顺序放置 def name1 = 'aaa' de…