• Swift快速入门


    Swift是一门全新的iOS APP开发语言,也是目前苹果所推荐的。在Xcode13里新建项目时,Swift是默认的语言。在最新一期的世界编程语言排行榜上,Swift已经排到了第14位,Objective-C前20都看不到了。很明显,对于iOS开发者来说,拥抱Swift是一个必然的选择(与之对比Android开发的Kotlin似乎并没有达到这样的地位)。此外,Swift for Tensorflow可以使用Swift语言开发深度学习应用,说明Swift在语言特性方面确实有自己的特点。

    下面的Swift代码片段来自于某教学视频,可以帮助我们快速入门swift。我们选择创建macOS-Command Line Tool项目。

    然后在这个项目中的main.swift文件里面,输入如下代码即可。

    import Foundation
    
    print("Hello, World!")
    
    func bigger(a:Int,  b:Int) -> Int{
        if a>b{
            return a
        }else{
            return b
        }
    }
    
    func bigger2(a:String,b:String) -> String{
        if a>b{
            return a
        }else{
            return b
        }
    }
    
    //泛型
    func bigger3<T:Comparable>(a:T,b:T) -> T{
        if a>b{
            return a
        }else{
            return b
        }
    }
    
    var i = bigger(a: 3, b: 4)
    print(i)
    
    var j = bigger2(a: "abc", b: "bbc")
    print(j)
    
    var k = bigger3(a: "china", b: "korea")
    print(k)
    
    var avengers = ["Iron man","Thor","Block widow"]
    print(avengers[1])
    avengers.append("Eagle eye")
    print(avengers[3])
    avengers.remove(at: 2)
    avengers.insert("first", at: 0)
    print(avengers[0])
    
    print("---------")
    for av in avengers{
        print(av)
    }
    
    print("----------")
    let avs2 = avengers.sorted()
    for av in avs2{
        print(av)
    }
    
    print("-----------")
    let avs3 = avengers.map{
        return "复仇者:"+$0
    }
    for av in avs3{
        print(av)
    }
    
    
    struct  Human{
        var name = ""
        var age = 0
        var height = 0
        
        func shuoming(){
            print("\(name)的年龄是\(age)岁,身高是\(height)厘米。")
        }
    }
    
    var tonyStark = Human(name:"Iron Man",age:32,height:189)
    tonyStark.shuoming()
    print(tonyStark.name)
    
    //协议 类似于接口
    protocol flyable {
        func takeoff(speed:Int)
    }
    
    protocol armed {
        func attack(auto:Bool)
    }
    
    extension Human:flyable,armed{
        func attack(auto: Bool) {
            if auto{
                print("激光单点射击")
            }else{
                print("AI自动射击")
            }
        }
        
        func takeoff(speed: Int) {
            print("\(name)将以时速\(speed)公里起飞。 ")
        }
    }
    
    tonyStark.takeoff(speed: 300)
    tonyStark.attack(auto: true)

    点击运行按钮,可以在Debug Area看到运行结果。 

  • 相关阅读:
    【算法学习笔记】树状数组
    【算法学习笔记】前缀和与差分
    【算法学习笔记】RMQ问题与ST表
    【算法学习笔记】倍增求最近公共祖先(LCA,非战斗机)
    使用Ajax Web.config配置
    GridView导出Excel
    [OFBiz]简介 二
    [OFBiz]开发 一
    JAVACC详解
    Ofbiz 10.04 + eclipse 安装与配置
  • 原文地址:https://www.cnblogs.com/guwei4037/p/15586461.html
Copyright © 2020-2023  润新知