条件语句
1- if 语句
使用形式:
if(条件){
条件成立执行的语句
}
如果条件成立,大括号内的语句就被执行
2- if……else……语句
使用形式:
if(条件){
条件成立执行的语句
}else{
条件不成立执行的语句
}
注意:else
必须紧跟在 }
后面,不能另起一行,否则报错
还可以组合起来用:
if......else if......else......
语句
if(条件1){
语句1
}else if(条件2){
语句2
}else if(条件3){
语句3
}else{
语句4
}
3- switch语句
switch
语句允许根据值列表测试变量的相等性。 每个值都称为大小写,并且针对每种情况检查打开的变量。
基本形式:
switch(expr, case1, case2, case3....)
- 如果expr是个整数
n
,则语句返回第n种情况,即case n
例如:
s = switch(2, a=333,b=444,c=555,d=666)
print(s)
#输出:
[1] 444
- 如果expr是个变量名,则返回变量名表示的那一种情况:
you.like = 'one'
s = switch(you.like, a=333, b=444, c=555, one=666)
print(s)
#输出:
[1] 666
循环语句
1- repeat语句
repeat
语句的形式:
repeat {
语句1
if(条件) {
break
}
}
表示循环执行语句1
,然后判断,如果满足条件
时,就退出循环。
例如:
a <- 5
repeat{
print(a)
a <- a+1
if(a == 7){
break
}
}
#输出:
[1] 5
[1] 6
注意,语句1是在判断条件是否成立之前执行的,也就是说,repeat
语句至少会执行一次语句1
例如:
a <- 5
repeat{
print(a)
if(a > 0){
break
}
}
#输出:
[1] 5
温馨提示:由于条件是放在循环体后面的,所以使用这个语句一定要注意控制循环退出的条件,否则如果一不小心,就会陷入死循环。
2- while语句
基本形式:
while (条件) {
语句
}
表示当满足条件
时,就执行大括号内的语句,不满足就退出循环。
例如:
a <- 5
while(a>=0){
print(a)
a <- a-1
}
#输出:
[1] 5
[1] 4
[1] 3
[1] 2
[1] 1
[1] 0
3- for语句
基本形式:
for (变量 in 条件) {
循环体
}
R的for循环是特别灵活的,因为它们不限于整数,或者输入中的偶数。 我们可以传递字符向量,逻辑向量,列表或表达式。
例如:
for(i in 10){
print(i)
}
#输出:
[1] 10
for(i in 'abcd'){
print(i)
}
#输出:
[1] "abcd"
上面这两种情况只循环了一次;
下面这种情况传递了一个向量,可循环多次:
v = c(1,2,3,4,'a','b','c')
for(i in v){
print(i)
}
#输出:
[1] "1"
[1] "2"
[1] "3"
[1] "4"
[1] "a"
[1] "b"
[1] "c"