0
点赞
收藏
分享

微信扫一扫

Groovy语法大全


文章目录

  • ​​一、Win10安装groovy环境​​
  • ​​`1.打开groovy自带的编辑器`​​
  • ​​二、数值和表达式​​
  • ​​`1.整数运算符`​​
  • ​​`2.混合运算`​​
  • ​​`3.赋值`​​
  • ​​第一次使用变量,需要用def去声明变量​​
  • ​​变量被称作标识符,标识符命名规则​​
  • ​​三、字符串和正则表达式​​
  • ​​`1.字符串索引`​​
  • ​​`2.基本操作`​​
  • ​​`3.正则表达式`​​
  • ​​`4.替换字符串后面的换行符`​​
  • ​​`5.常用操作`​​
  • ​​判断字符串是否为数字​​
  • ​​四、列表、映射和范围​​
  • ​​`1.列表`​​
  • ​​列表方法​​
  • ​​遍历列表​​
  • ​​以逗号分隔,存到列表中​​
  • ​​把列表元素拼接成字符串​​
  • ​​`2.映射(类似Python的字典)`​​
  • ​​映射方法​​
  • ​​映射取值方法对比​​
  • ​​遍历映射​​
  • ​​`3.范围`​​
  • ​​包含范围的示例​​
  • ​​范围方法​​
  • ​​五、基本输入输出​​
  • ​​`1.基本输出`​​
  • ​​`2.格式化输出`​​
  • ​​`3.简单输入`​​
  • ​​六、学习案例1​​
  • ​​七、方法​​
  • ​​一个简单的方法定义​​
  • ​​八、判断语句​​
  • ​​if​​
  • ​​九、文件​​
  • ​​写文件​​
  • ​​十、闭包​​
  • ​​一个简单的参数化闭包​​
  • ​​使用隐参数it​​
  • ​​十一、对象​​
  • ​​追加datas这个Map对象到parameter​​
  • ​​十二、异常处理​​
  • ​​十三、其它​​
  • ​​查看数据类型​​

参考书籍《GROOVY入门经典》

一、Win10安装groovy环境

1.打开groovy自带的编辑器

DOS命令行输入groovyconsole

Groovy语法大全_groovy语法

二、数值和表达式

1.整数运算符

Groovy语法大全_groovy处理字符串_02

2.混合运算

Groovy语法大全_groovy处理字符串_03

3.赋值

第一次使用变量,需要用def去声明变量

def conut = 0     #声明并初始化变量
count = conut + 1 #在当前值的基础上加1

变量被称作标识符,标识符命名规则

Groovy语法大全_groovy处理字符串_04

三、字符串和正则表达式

1.字符串索引

Groovy语法大全_groovy异常处理_05


Groovy语法大全_groovy异常处理_06

2.基本操作

Groovy语法大全_切割字符串_07

3.正则表达式

=~表示模糊匹配;​==~​表示精确匹配

4.替换字符串后面的换行符

webVersion = webVersion.replaceAll("\n","")

5.常用操作

判断字符串是否为数字

def num = '1106502'
if(! num.isInteger() && ! num.isFloat()){
println "不是数字"
}else{
println "是数字"
}
println num
}

VALUE.contains('abc')        //字符串包含abc
VALUE.startsWith('test') //以test开头为真
VALUE.endsWith('.txt') //VALUE字符串以.txt结尾为真

四、列表、映射和范围

参考文章:
​​​Groovy的List(列表)操作​​

1.列表

Groovy语法大全_切割字符串_08

def numbers = [11, 22]    #定义一个新列表
numbers << 13 #[11, 22, 13]
numbers + [14, 15] #[11, 22, 13, 14, 15]
numbers -[11] #[22, 13]

列表方法

def arr = new ArrayList()            //定义一个空列表
def HostIpList = [] //定义一个空列表
alist.contains(4) //检查4是否在alist列表中
alist.remove('b') //删除列表中的b元素
HostIpList = Hosts.split("\n") //以换行符进行分割,返回一个列表
def Flag = fileExists '/data/host.yaml' //存在返回真,不存在返回假
alist -= [1] //删除列表alist中值为1的元素

Groovy语法大全_groovy异常处理_09


Groovy语法大全_切割字符串_10


Groovy语法大全_切割字符串_11

遍历列表

for(ip in ipList) {
println ip
}

[1, 2, 3].each {println it}

以逗号分隔,存到列表中

def nfs_server = "192.168.1.1,192.168.1.2"
def nfsIPList = nfs_server.split(",")

把列表元素拼接成字符串

string1 = alist[0] + '-' + alist[1]

2.映射(类似Python的字典)

​​简单的映射​​

Groovy语法大全_遍历列表_12

映射方法

Groovy语法大全_groovy处理字符串_13


Groovy语法大全_切割字符串_14

映射取值方法对比

def paramMap = ["a":1, "b":2]

paramMap.a和paramMap.get[‘a’]都可以获取a的值

如果paramMap中没有a,​​paramMap.a返回null​​​,paramMap.get[‘a’]会​​抛出异常​

遍历映射

def paramMap = ["a":1, "b":2]
paramMap.each{entry ->
def key = entry.key
def value = entry.value
println key
println value
}

def map1 = [:]        //定义空映射

3.范围

包含范围的示例

Groovy语法大全_切割字符串_15

范围方法

Groovy语法大全_groovy处理字符串_16

五、基本输入输出

1.基本输出

println "Hello World!"

2.格式化输出

Groovy语法大全_遍历列表_17

3.简单输入

Groovy语法大全_groovy语法_18

六、学习案例1

def library =[ 'Ken' : ['Groovy','UML'],
'John' : ['java']
]
library['Sally'] = ['Basic']
library['John'] = library['John'] << 'OOD'
library['Ken'].contains('UML')
library.keySet().sort()
library['Ken'].size

七、方法

一个简单的方法定义

def greetings() {
println 'Hello World!'
}
greetings()

八、判断语句

if

if(表达式){
cmd
} else {
cmd
}

九、文件

写文件

outFile = new File(‘/tmp/t1.txt’)
outFile.append('Hello World'+'\n')

十、闭包

表示一段可执行的代码库,类似于方法(函数)。

一个简单的参数化闭包

def clos={param -> println "Hello ${param}"}
clos('World')

解释:

param为形参,World为实参

使用隐参数it

def clos={println "Hello ${it}"}
clos.call('World')

十一、对象

追加datas这个Map对象到parameter

def parameter = new HashMap()
parameter.putAll(datas)

十二、异常处理

timestamps
{
try{

}//try
catch(Exception err)
{
throw new Exception("*******Caught an exception: ${err}")
}
}

十三、其它

查看数据类型

println(alist.getClass())


举报

相关推荐

0 条评论