我正在学习Swift的语法,想知道为什么下面的代码无法按我期望的那样工作:
for i in 1...100{
switch (i){
case 1:
Int(i%3) == 0
println("Fizz")
case 2:
Int(i%5) == 0
println("Buzz")
default:
println("\(i)")
}
}
我想每次将数字除以3(3、6、9、12等)时都打印Fizz,并且每次将其除以5时都打印Buzz,那么缺少哪一块拼图?
注意:我确实使用以下方法解决了问题:
for ( var i = 0; i < 101; i++){
if (Int(i%3) == 0){
println("Fizz")
} else if (Int(i%5) == 0){
println("Buzz")
} else {
println("\(i)")
}
}
我想知道如何使用Switch解决此问题。谢谢。
FizzBuzz游戏的通常规则 是用“
Fizz”替换每个3的倍数,用“ Buzz”替换每个5的倍数, 并 用“ FizzBuzz” 替换3 和 5的每个倍数。
这可以通过在元组上使用switch语句来完成(i % 3, i % 5)
。请注意,这_
意味着“任何值”:
for i in 1 ... 100 {
switch (i % 3, i % 5) {
case (0, 0):
print("FizzBuzz")
case (0, _):
print("Fizz")
case (_, 0):
print("Buzz")
default:
print(i)
}
}
Swift 条件语句 switch 语句允许测试一个变量等于多个值时的情况。 Swift 语言中只要匹配到 case 语句,则整个 switch 语句执行完成。 语法 Swift 语言中 switch 语句的语法: switch expression { case expression1 : statement(s) fallthrough /* 可选 */
问题内容: 在Swift中,您可以使用’is’检查对象的类类型。如何将其合并到“ switch”块中? 我认为这是不可能的,所以我想知道解决此问题的最佳方法是什么。 问题答案: 您绝对可以在一个块中使用。请参阅Swift编程语言中的“对Any和AnyObject进行类型转换”(尽管当然不限于此)。他们有一个广泛的例子:
本文向大家介绍Swift编程中的switch...case语句实例解析,包括了Swift编程中的switch...case语句实例解析的使用技巧和注意事项,需要的朋友参考一下 Swift中的switch...case语句可以判断对象类型, Objective-C中则必须是整数。 不可以穿透,可以不写break, 因为不能穿透所以不能这么写 只能这么写 不能不写default default位置只能
问题内容: 我熟悉Swift中的语句,但想知道如何用来替换这段代码: 问题答案: 这是一种方法。假设是或其他,则可以选择将操作数分配给新变量。这样,您就可以使用关键字来对其进行范围划分: 可以简化一下: 您还可以完全避免关键字与范围匹配:
本文向大家介绍Java中的Switch语句,包括了Java中的Switch语句的使用技巧和注意事项,需要的朋友参考一下 switch语句允许针对值列表对变量进行相等性测试。每个值称为一个案例,并针对每种情况检查要打开的变量。首先让我们看一下语法- 以下是适用于Java中switch语句的规则- switch语句中使用的变量只能是整数,可转换整数(字节,短整数,字符),字符串和枚举。 开关内可以有任
本文向大家介绍浅谈Swift编程中switch与fallthrough语句的使用,包括了浅谈Swift编程中switch与fallthrough语句的使用的使用技巧和注意事项,需要的朋友参考一下 在 Swift 中的 switch 语句,只要第一个匹配的情况(case) 完成执行,而不是通过随后的情况(case)的底部,如它在 C 和 C++ 编程语言中的那样。以下是 C 和 C++ 的 swit