您的位置:首页 > 其它

groovy入门2 流程控制

2016-04-06 23:07 411 查看
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", "Groovy", "JavaScript"]
list.each{ println it }

3.3  Groovy 数组迭代

def list = ["Java", "Groovy", "JavaScript"] as String[]
list.each{println it}

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++
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: