当前位置: 首页 > 编程笔记 >

Swift中switch语句区间和元组模式匹配

柴翰藻
2023-03-14
本文向大家介绍Swift中switch语句区间和元组模式匹配,包括了Swift中switch语句区间和元组模式匹配的使用技巧和注意事项,需要的朋友参考一下

废话不多说了,下面一段代码给大家介绍了switch语句区间和元组模式匹配,具体内容如下所示:

// switch 的广义匹配
    
    let x = 1000
    
    // 也就是说并没有像C语言那样 要求 switch 后面的是整数常量
    
    switch x {
      
      // case后面可以跟区间啦
    case 1...9:
      print("个位数")
    case 10...99:
      print("十位数")
    case 100...999:
      print("百位数")
    case 1000...9999:
      print("千位数")
      
    default:
      print("不符合")
    }
    
    
    
    let point = (10, 10)
    // switch 后面可以跟一个元组类型
    switch point {
    case (0, 0):
      print("坐标原点")
    case (1...10, 1...10):
      print("x和y坐标范围是位于1-10之间的")

    case(_, 0):
      print("点在 x 轴上")
      
    default:
      print("其他")
    }

以上所述是小编给大家介绍的Swift中switch语句区间和元组模式匹配,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!

 类似资料:
  • Swift 条件语句 switch 语句允许测试一个变量等于多个值时的情况。 Swift 语言中只要匹配到 case 语句,则整个 switch 语句执行完成。 语法 Swift 语言中 switch 语句的语法: switch expression { case expression1 : statement(s) fallthrough /* 可选 */

  • 问题内容: 我正在学习Swift的语法,想知道为什么下面的代码无法按我期望的那样工作: 我想每次将数字除以3(3、6、9、12等)时都打印Fizz,并且每次将其除以5时都打印Buzz,那么缺少哪一块拼图? 注意:我确实使用以下方法解决了问题: 我想知道如何使用Switch解决此问题。谢谢。 问题答案: FizzBu​​zz游戏的通常规则 是用“ Fizz”替换每个3的倍数,用“ Buzz”替换每个

  • 问题内容: 我想知道是否有一种方法可以在java switch case语句中执行不区分大小写的匹配。默认实现 区分大小写 。请参见下面的示例。 因此,以上语句作为输出返回。而且我正在尝试使其像 不区分大小写的 匹配一样工作。我尝试将字符串文字都转换为小写,然后进行比较。但无法做到。 问题答案: 如果要这样做:只需确保输入数据全部为小写,并使用小写… 本地化问题 同样,古老的本地化问题再次引起人们

  • 问题内容: 在Swift中,有一个通用的模式可以用来解开可选项: 我目前正在执行这种模式匹配,但是在切换情况下使用元组,其中两个参数都是可选的: 但是,此打印: 有没有一种方法可以使我的选配和模式匹配不为零而展开?目前,我的解决方法是: 问题答案: 您可以使用以下模式: 只是的快捷方式,因此等效于

  • switch 语句可以替代多个 if 判断。 switch 语句为多分支选择的情况提供了一个更具描述性的方式。 语法 switch 语句有至少一个 case 代码块和一个可选的 default 代码块。 就像这样: switch(x) { case 'value1': // if (x === 'value1') ... [break] case 'value2':

  •  使用 switch 语句可以更简洁地实现 if ~ else if 的结构。格式如下。 switch(base_expression) { casecondition_expression1: casecondition_expression2: : : default: : : }  写在 base_expression 位置的表达式会在刚开始时被求值。switch 后面的语句块中的 case