加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

groovy入门2 流程控制

发布时间:2020-12-14 16:44:35 所属栏目:大数据 来源:网络整理
导读:1 if else的判断控制 if判断条件中不仅可以是JAVA中的true和false,也可以是其他对象 如果是字符串对象,如果字符串为空,或空字符串都认为假 如果是集合,如果集合为空指针,或空对象都认为假等等条件 例子如下 def?s1?=?'' if(s1){ ????println?true }else
1 if else的判断控制
if判断条件中不仅可以是JAVA中的true和false,也可以是其他对象
如果是字符串对象,如果字符串为空,或空字符串都认为假
如果是集合,如果集合为空指针,或空对象都认为假等等条件
例子如下
def?s1?=?''
if(s1){
????println?true
}else?{
????println?false
}

2 switch case
groovy中的switch功能非常强大,可以处理字符串,同时case中格式更为宽泛,既可以指定范围,又可以指定数组。例子如下:

def result
def score = 'A'
switch(score){
? ? case 0..60:
? ? ? ? result ='D'
? ? ? ? break
? ? case 61..70://case中支持范围
? ? ? ? result = 'C'
? ? ? ? break
? ? case 71..89:
? ? ? ? result = 'B'
? ? ? ? break
? ? case 90..99:
? ? ? ? result = 'A'
? ? ? ? break
? ? case 100:
? ? ? ? result = 'A+'
? ? ? ? break
? ? case ['A+','A','B','C','D']:
? ? ? ? result = 'A'
? ? ? ? break;
}
println result

3 for 循环形式较多,例如;
3.1 Groovy 列表迭代
def list = ["Java","Groovy","JavaScript"]
list.each{language->
? println language
}
3.2?使用 Groovy 的?it?变量的迭代
 
 
def list = ["Java","JavaScript"]
list.each{ println it }
3.3 ?Groovy 数组迭代
 
 3.4?从 map 获得键和值 
def map = ["Java":"server","Groovy":"server","JavaScript":"web"]
map.each{
? println it.key
? println it.value
}
3.5 新风格
for (i in 0 .. 9) { ? ? // (i in 0 .. 9)表示循环从i=0开始,到i<=9时结束 ?
? ? print i + " " ?
} ?
3.6?
5.times{//[0,5)
? ? print it +" "
}
3.7?
5.upto(10){//[5,10]
? ? print it+" "
}
3.8?
5.times{//【0,5)
? ? print it + " "
}
3.9?
0.step(12,2){//[0,12)
? ? print it + ' '
}
4 while循环和其他语言没有太大差别,例如
n = 0 ?
while (n < 10) { ?
? ? print n + " " ?
? ? n++ ?
} ?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读