美文网首页
swift 4.x 控制流 使用 if 和 switch 来进

swift 4.x 控制流 使用 if 和 switch 来进

作者: SnailLi | 来源:发表于2018-05-22 17:53 被阅读19次
     /*
     if、for-in语句的结合使用
     */
    let array = [85,52,52,5266,52363,63330,8602,8222]
    
    var numbers1  = [Any]()
    var numbers2 = [Any]()
    
    var number = 0
    for num in array {
        
        if num > 100{
            
            numbers1.append(num)
            
            number += 3
            
        }else{
            
            numbers2.append(num)
            
            number -= 1
            
        }
        
    }

    print("numbers1:\(numbers1),numbers2:\(numbers2),number:\(number)")


  /*
     if语句的使用
     */
    let optionalString: String? = "Hello"
    /*
     在 if 语句中,条件必须是一个布尔表达式
     */
    print(optionalString != nil)
    print(optionalString == nil)

   /*
     可以一起使用 if 和 let 来处理值缺失的情况
     如果变量的可选值是 ,条件会判断为 ,大括号中的代码会被跳过。如果不是 ,会将值解包并赋给 后面的常量,这样代码块中就可以使用这个值了
     */
    let optionalName: String? = nil
    var greeting = "Hello!"
    if let name = optionalName {

        //当optionalName的值不为nil的话,会执行这个代码块
        greeting = "Hello, \(name)"

    }
    else{

        greeting = "Hello"

    }

    print(greeting)
    
    /*
     另一种处理可选值的方法是通过使用 ?? 操作符来提供一个默认值
     */
    let nickName : String? = nil
    let fullName :String = "John Appleseed"

    //当nickName的值为nil的时候,会取fullName的值
    let string = "Hi \(nickName ?? fullName)"

    print(string)


     /*
     switch语句 支持任意类型的数据以及各种比较操作  跟3.0不一样,4.0必须加上break
     */
    
    let title = "我在学习swift"
    
    switch title {
    case "123":
        
        let string = "swift是一门很棒的编程语言"
        
        print("\(title),\(string)")
        
        break
        
    case let x where x.hasSuffix("f")://let将匹配等式的值赋给常量 x     后缀
        
        print("\(x)")
        
        break
        
    case let x where x.hasPrefix("我")://let将匹配等式的值赋给常量 x     前缀
        
        print("\(x)")
        
        break
        
    default:
        
        

        break
        
        
        
        
    }
    
}

     /*
     for-in 来遍历
     */
    let interestingNumbers = [
        "Prime": [2, 3, 5, 7, 11, 13],
        "Fibonacci": [1, 1, 2, 3, 5, 8],
        "Square": [1, 4, 9, 16, 25],
        ]
    var largest = [Any]()
    
    
    
    //需要两个变量来表示每个键值对。字典是一个无序的集合,所以他们的键和值以 任意顺序迭代结束。
    for (kind , numbers) in interestingNumbers {
        
        for number in numbers{
            
            largest.append(number)
            
        }
        
        print(kind)
        
    }
    

    print("largest:\(largest)")


       /*
     while 来重复运行一段代码直到不满足条件
     */
    var n = 2
    while n < 100 {
        
        
        n = n * 2
        
        print(n)
        

    }
    
}

      /*
     repeat-while语句
     循环条件也可以在结尾,保证能至少循环一次
     */
    var m = 2
    repeat {
        
        m=m * 2
        
    } while m < 100
    
    print(m)

   /*
     使用 ..< 创建的范围不包含上界,如果想包含的话需要使用 ...
     */
    var total = 0
    for i in 0..<4 {
        
        total += i
        
        print(total)
        
    }

相关文章

  • swift 4.x 控制流 使用 if 和 switch 来进

  • Swift教程之控制流

    控制流 Swift包含很多控制流语句:while循环、if、guard、switch和for-in循环。 For-...

  • Swift-控制流(二)

    Swift提供了各种控制流语句。 这些包括while循环来执行多次任务; if,guard和switch语句,以根...

  • 【Swift 3 && C++11】<第一

    控制流, 就是程序中的控制语句, 如 if, switch, for, while 等.但是在 Swift 和 C...

  • Swift-控制流

    Swift提供了多种控制流声明。包括while循环来多次执行一个任务;if,guard和switch声明来根据确定...

  • 第七章 控制流

    第七章 控制流 Swift 提供了类似于 C 语言的控制流结构,包括for、while循环;if、switch条件...

  • Swift 控制流

    Swift提供了多种控制流语句。其中包括while循环,用于多次执行任务;if、guard和switch语句,用于...

  • 2018-07-09

    控制流 Swift提供了各种控制流程语句。这些包括while循环多次执行任务; if,guard以及switch基...

  • swift学习目录

    Swift中的一些基础知识 Swift中的常量、变量、可选值 Swift中的控制流(if/三目/switch) S...

  • 从 0 到 1 实现 Swift App (二)循环控制

    swift 中的循环控制语法跟 oc 比较有些不同,循环体可以使用开闭区间来进行控制循环体,穿插使用 switch...

网友评论

      本文标题:swift 4.x 控制流 使用 if 和 switch 来进

      本文链接:https://www.haomeiwen.com/subject/oydkjftx.html