大佬教程收集整理的这篇文章主要介绍了Groovy常用语法汇总,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
3.单引号,里面的内容严格的对应java中的String,不对$符号进行转义.
def s1 = ‘i am a student $‘
println s1
i am a student $
4.双引号“ ”的内容中如果有$号的话,会先对表达式先求值.
def age = 100
def s2 = "他已经 $age 岁了"
println(s2)
他已经 100 岁了
5.三个引号中的字符串支持随意的换行.
def s3 = ‘‘‘
x
y
z
‘‘‘
println(s3)
x
y
z
def a = 1
def b = "我是谁"
def double = 1.0
def fun(){
}
fun()
def fun1(def1,def2){
println def1+" &&"+def2
}
fun1(1,2)
def getSomething(){
"我是谁"
1000
}
println getSomething()
1.无返回类型的函数定义,必须使用def关键字 ,最后一行代码的执行结果就是本函数的返回值
2.如果指定了函数返回类型,则可不必加def关键字来定义函数
def t1 = null
assert t1
断言变量的长度
def t2 = "ab3"
assert t2.size() >3
方式二
for(i in 0..5){
println i
}
其它
4.times {
println it
}
def name = ‘d‘
def result = name==‘d‘?‘cc‘:"abc"
println result
age = 36
def rate
switch (agE){
case 10..26:
rate = 0.05
break
case 27..36:
rate = 0.06
break
case 37..46:
rate = 0.07
break
default:
throw new IllegalArgumentexception()
}
println rate
Person person
println person?.Data?.name
def g1 = ‘1‘
def f1= g1 as int
def f2 = g1.asType(Integer)
println f2
def Boolean b1 = true
println b1
def int b2 = 100
def String b3 = "Hello world"
if(b1){
println "Hello world"
}
List:链表,其底层对应Java中的List接口,一般用ArrayList作为真正的实现类。
Map:键-值表,其底层对应Java中的LinkedHashMap。
Range:范围,它其实是List的一种拓展。
List
def aList = [5,‘String‘,false]
println aList
println aList[0]
println "集合的长度:"+aList.size()
aList[10] = ‘sss‘
println aList
map
def map = [key1:"value1",key2:"value2",key3:"value3"]
println map
println "map的长度:"+map.size()
println map.keySet()
println map.values()
println map.key1
println map.get("key1")
map.put("key4","value4")
println map.entrySet()
Iterator it = map.iterator()
while(it.hasNext()){
println "遍历map:"+it.next()
}
map.containsKey("key1")
map.containsValue("values1")
map.clear()
Set set = map.keySet()
def range = 1..5
println range
println "长度:"+range.size()
println "迭代器:"+range.iterator()
println "获取标号为1的元素:" +range.get(1)
println "是否包含元素5:"+range.contains(5)
println "最后一个元素:"+range.last()
//println "移除标号为1的元素:"+range.remove(1)
//清空列表
//range.clear()
println "第一个数据:"+range.from
println "最后一个数据:"+range.to
模板
def fun1 = {
p1 ->
def s = "我是一个闭包,"+ p1
}
println(fun1.call())
println(fun1.call("我是一个参数"))
println fun1("我是参数2")
闭包没定义参数的话,则隐含有一个参数,这个参数名字叫it,和this的作用类似。it代表闭包的参数。
def fun2 = {
it -> "abcd"
}
println fun2.call()
如果在闭包定义时,采用下面这种写法,则表示闭包没有参数!
def fun3 = {
-> "cccc"
}
println fun3.call()
def list = [1,2,3]
list.each {
println it
}
1
2
3
each函数调用的圆括号不见了!原来,Groovy中,当函数的最后一个参数是闭包的话,可以省略圆括号。比如:
def fun5(int a1,String b1,Closure closurE){
closure()
}
fun5(5,"test",{
println "i am in closure"
})
以后这样代码会比较多:
案列1:
//findAll
def sList = str2.findAll{
String s1 -> s1.isnumber()
}
println sList
//any
def result = str2.any{
String s -> s.isnumber()
}
println result
//collect
def list2 = str2.collect {
it.toUpperCase()
}
println list2.toListString()
public class Person{
def String name;
def int age;
String getName() {
return name
}
void setName(String Name) {
this.name = name
}
int getAge() {
return age
}
void setAge(int agE) {
this.age = age
}
@Override
String toString() {
return "Person{"+
"name=‘"+name+‘\‘‘+
",age=" + age+
‘}‘;
}
}
Person person = new Person()
person.setName("Test")
person.setAge(20)
println(person.toString())
以上是大佬教程为你收集整理的Groovy常用语法汇总全部内容,希望文章能够帮你解决Groovy常用语法汇总所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。