Groovy(读做:gu : ru : wei)

Groovy是一种运行在jvm上的动态语言,它吸取了Python、Ruby和SmallTalk等语言的优点;在Java的基础之上增加了许多特色功能,相比Java语法更易懂,易上手调试;无缝集成了Java的类库,编译后的.groovy也是以class形式出现。

下载安装

下载地址:http://groovy-lang.org/download.html

解压zip文件 unzip apache-groovy-sdk-2.5.4.zip

配置环境变量 export GROOVY_PATH=/Users/emmet/apache/groovy-2.5.4 export PATH=$PATH:$GROOVY_PATH/bin

测试groovy安装是否成功 groovy -v

Groovy脚本

变量定义def name = "gegeza" 或者 int age = 13

定义集合

def ageRange = 0..5
def col = ['bitwalk', 'emmet', 'gegeza']

集合加减元素

assert ageRange - [2,4] == [0,1,3,5]
col.add('shawanyi')
col << 'haha'
col[6] = 'jiuzheme'
col += 'bugan'

定义map

def dada = [name:'dada', age:16, addr:'hangzhou']
print(dada.getClass())

循环

//循环方式1
for (i in 1..<10) {
println(i)
}
//循环方式2 it为默认关键字
col.each {
println(it)
}
//循环方式3
ageRange.each { value ->
println(value)
}
//map循环方式
dada.each {key, value ->
println("${key}-${value}")
}
'bitwalk'.each {
println(it.toUpperCase())
}

定义闭包

def excite = {
word -> return "this is ${word}"
}
println(excite('what'))

Grovvy类

import org.junit.Test

class Song {
def name
def artist
def genre
//加?可避免空指针异常
String getArtist() {
return artist?.toUpperCase()
} String toString() {
return "${name}, ${artist}, ${genre}"
}
static void main(args) {
def song = new Song(name: "Hope", artist: "dd", genre: "F");
println(song.toString())
}
@Test //加Test注解即可启用Junit测试
void test() {
def song = new Song(name: "Hope", genre: "F");
println(song.getArtist())
}
}

1.准备工作之Groovy的更多相关文章

  1. AutoRegister ASM AOP 字节码 案例 原理 MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  2. Groovy实现原理分析——准备工作

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  3. Groovy学习笔记(二)

    在上一篇文章中我们主要学习了如何搭建Groovy开发环境,为我们的Groovy之旅做好了准备工作,不知道你是否准备好了?接下来我们就一起看看Groovy与我们熟悉的Java有什么异同. Groovy是 ...

  4. Android Gradle脚本从Groovy迁移到Kotlin DSL

    Android Gradle从Groovy迁移到Kotlin Android项目用Gradle构建, 其脚本语言之前是Groovy, 目前也提供了Kotlin的支持, 所以可以迁移到Kotlin. 官 ...

  5. Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作

    Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part1:准备工作 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 1.实施前准备工作 1.1 服务器安装操 ...

  6. 步入angularjs directive(指令)--准备工作熟悉hasOwnProperty

    在讲解directive之前,先做一下准备工作,为何要这样呢? 因为我们不是简单的说说directive怎么用,还要知道为什么这么用!(今天我们先磨磨刀!). 首先我们讲讲js 基础的知识--hasO ...

  7. Java——搭建自己的RESTful API服务器(SpringBoot、Groovy)

    这又是一篇JavaWeb相关的博客,内容涉及: SpringBoot:微框架,提供快速构建服务的功能 SpringMVC:Struts的替代者 MyBatis:数据库操作库 Groovy:能与Java ...

  8. Linux平台 Oracle 11gR2 RAC安装Part1:准备工作

    一.实施前期准备工作 1.1 服务器安装操作系统 1.2 Oracle安装介质 1.3 共享存储规划 1.4 网络规范分配 二.安装前期准备工作 2.1 各节点系统时间校对 2.2 各节点关闭防火墙和 ...

  9. 半吊子学习Swift--天气预报程序-准备工作

    MacBookPro买完快半年了,当初想着买个本本学点ios,买完就看了几天的教程[捂脸],最近发现人都要废了,想重新开始学习Swift并将每天的进程通过博客发布来督促自己. 由于文笔不好,接触Swi ...

随机推荐

  1. find 递归/不递归 查找子目录的方法

    1.递归查找(find 命令 是递归遍历文件夹的) 命令:find . -name “*.txt” //当前路径下递归查找以.txt结尾的文件夹 2.不递归查找 find . -name “*.txt ...

  2. python 错题集

    1.IOError: [Errno 22] invalid mode ('rb') or filename: '\xe2\x80\xaaD:\NLP\cv082_11080.csv' 将一个py文件用 ...

  3. 简单的页面互点Javascript代码

    简单的页面互点Javascript代码,可以适用于前端$(function(){ $('.ip_b_con_item li,.pro_index_list li').mouseover(functio ...

  4. Linux Apache虚拟主机配置方法

    apache 虚拟主机配置 注意: 虚拟主机可以开很多个 虚拟主机配置之后,原来的默认/etc/httpd/httpd.conf中的默认网站就不会生效了 练习: 主机server0 ip:172.25 ...

  5. mysql数据库优化之 如何选择合适的列建立索引

    1. 在where 从句,group by 从句,order by 从句,on 从句中出现的列: 2. 索引字段越小越好: 3. 离散度大的列放到联合索引的前面:比如: select * from p ...

  6. 51单片机学习笔记(郭天祥版)(6)——键盘的作业题、AD、DA、DS18B20(这里之后看清翔的补一下好了)

    A:analog,D:digital AD,就是模拟量转换为数字量,DA就是数字量转换为模拟量 为什么要转换? 单片机是数字芯片,内部只有0和1,没法表示模拟量 比如我们如果需要2.5V怎么办?其实是 ...

  7. ELK-Elasticsearch 安装启动

    系统版本:Centos7 Elasticsearch:5.3.1 1:关闭SELinux [root@es local]# sed -i 's/SELINUX=enforcing/SELINUX=di ...

  8. springmvc的面试知识点总结

    新的一年,开启新的篇章,欧气满满,迎接未来. 前几天回顾了spring相关的知识点,现在再来回顾下springmvc相关的知识点做一下总结. 问题总结 之前面试问题总结的那篇文章中,与springmv ...

  9. IDEA访问不到SpringBoot项目webapp下的内容

    参考:https://blog.csdn.net/weixin_43105335/article/details/87863847 https://blog.csdn.net/qq_34797335/ ...

  10. spring-boot自定义favicon.ico文件

    一.将ico文件存放到resources目录的static中的favicon下. 二.在application.properties文件中增加配置 spring.mvc.favicon.enabled ...