使用case语句实现上面功能
时间: 2023-12-21 20:05:58 浏览: 24
使用 case 语句也可以实现上述功能,具体实现如下:
```
#!/bin/bash
case "$1" in
/*) # 如果以 / 开头,则表示为绝对路径
if [ -d "$1" ]; then
echo "$1 is a directory"
else
echo "$1 is not a directory"
fi
;;
*) # 否则表示为相对路径
if [ -d "./$1" ]; then
echo "$1 is a directory"
else
echo "$1 is not a directory"
fi
;;
esac
```
在上面的代码中,我们使用 case 语句来判断第一个参数是否为绝对路径。如果是绝对路径,则直接使用 test 命令来判断是否为目录;否则,我们在路径前面加上 "./",再使用 test 命令来判断是否为目录。
需要注意的是,case 语句中每个分支的结尾需要使用双分号来表示结束。
相关问题
python case语句实现方式
在 Python 中,没有内置的 case 语句,但可以使用 if-elif-else 语句来实现类似于 case 语句的功能。
例如,以下是一个使用 if-elif-else 语句实现 case 语句的示例:
```python
def case_example(argument):
switcher = {
0: "zero",
1: "one",
2: "two",
3: "three",
4: "four",
5: "five",
}
return switcher.get(argument, "invalid argument")
print(case_example(0)) # 输出 "zero"
print(case_example(6)) # 输出 "invalid argument"
```
在上面的示例中,我们定义了一个名为 `case_example` 的函数,接受一个参数 `argument`。我们使用一个字典 `switcher` 存储每个可能的情况和相应的结果。然后,我们使用 `get` 方法从字典中获取相应的结果。如果字典中不存在相应的结果,则返回默认值 "invalid argument"。
这是一种简单而有效的方法来实现类似于 case 语句的功能。
使用Java代码实现switch case功能
当我们需要根据不同的条件执行不同的代码块时,可以使用 switch case 语句。下面是一个使用 Java 代码实现 switch case 功能的示例:
```
int day = 3;
String dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
case 3:
dayName = "Wednesday";
break;
case 4:
dayName = "Thursday";
break;
case 5:
dayName = "Friday";
break;
case 6:
dayName = "Saturday";
break;
case 7:
dayName = "Sunday";
break;
default:
dayName = "Invalid day";
break;
}
System.out.println(dayName);
```
在上面的代码中,我们定义了一个整型变量 day,并使用 switch case 语句根据不同的值来执行不同的代码块。如果 day 的值为 1,那么 dayName 的值为 "Monday",如果 day 的值为 2,那么 dayName 的值为 "Tuesday",以此类推。如果 day 的值不在 1 到 7 的范围内,那么 dayName 的值为 "Invalid day"。最后,我们使用 System.out.println() 方法输出 dayName 的值。
希望这个示例能够帮助你理解如何使用 Java 代码实现 switch case 功能。