switch语句是一种选择控制机制, 它允许表达式的值通过map和search更改程序执行的控制流。
使用switch语句代替long if语句, 该if语句将变量与多个整数值进行比较。这是一个多路分支语句, 它提供了一种简便的方法来分派代码的不同部分的执行。该代码基于表达式的值。
此语句允许针对值列表测试变量是否相等。 switch语句有点复杂。为了理解它, 我们有一些关键点如下:
- 如果表达式类型是字符串, 则该字符串与列出的情况匹配。
- 如果有多个匹配项, 则使用第一个match元素。
- 没有默认情况。
- 如果没有大小写匹配, 则使用未命名的大小写。
基本上可以通过两种方式选择一种情况:
1)基于索引
如果大小写是像字符向量这样的值, 并且表达式的计算结果是一个数字, 则表达式的结果将用作选择大小写的索引。
2)基于匹配值
如果案例同时具有案例值和输出值, 例如[” case_1″ =” value1″], 则表达式值将与案例值匹配。如果符合条件, 则输出相应的值。
If-else语句的基本语法如下:
switch(expression, case1, case2, case3....)
流程图
例子1
x <- switch(
3, "Shubham", "Nishka", "Gunjan", "Sumit"
)
print(x)
输出
例子2
ax= 1
bx = 2
y = switch(
ax+bx, "Hello, Shubham", "Hello Arpita", "Hello Vaishali", "Hello Nishka"
)
print (y)
输出
例子3
y = "18"
x = switch(
y, "9"="Hello Arpita", "12"="Hello Vaishali", "18"="Hello Nishka", "21"="Hello Shubham"
)
print (x)
输出
例子4
x= "2"
y="1"
a = switch(
paste(x, y, sep=""), "9"="Hello Arpita", "12"="Hello Vaishali", "18"="Hello Nishka", "21"="Hello Shubham"
)
print (a)
输出
例子5
y = "18"
a=10
b=2
x = switch(
y, "9"=cat("Addition=", a+b), "12"=cat("Subtraction =", a-b), "18"=cat("Division= ", a/b), "21"=cat("multiplication =", a*b)
)
print (x)
输出
评论前必须登录!
注册