• Swift初探(一)



    介绍

    SwiftWWDC 2014上发布的一款新编程语言,要在未来取代Objective-C成为MacIOS开发的主要语言。

           苹果要大力推SwiftSwift可以说必火无疑。

    HelloWorld

           使用XCode6创建一个Command Line Tool项目,Language选择Swift

    会自动创建一个main.swift文件,打开文件,发现代码异常简单,只有两行。

    import Foundation
     
    println("Hello, World!")

    第一句import去掉也是可以的,swift一眼看上去最大的不同有两点,第一不需要main入口,类似于脚本语言,还有个让我很不好受的地方,就是不用敲分号了,这个真的很难适应,不过敲上分号也是不会报错的。

    第一句导入了Foundation框架,Foundation肯定不会陌生,导入之后我们可以用NSString了,具体我们以后再谈。

    println不说想必也知道,执行代码会打印Hellow World!。

     

    数据类型

    swift是弱类型的,使用var关键字声明变量,使用let关键字声明常量。

    // 声明变量
    var i = 1
    // 修改变量的值
    i = 10
     
    // 声明常量,值不可修改
    let c = 10

    编译器会根据赋值自动分析其数据类型,不过有些情况我们也需要指定具体的数据类型,因为 1 这个数字可以是Int也可以是Double。指定数据类型的语法是 变量名 :数据类型。

     
    // 声明Int类型变量
    var i:Int = 1
     
    // 声明Double类型变量
    var d:Double = 1

     

    方法&函数

    方法(我不喜欢叫函数)声明使用关键字 func

     
    // 计算两个数的和
    func add(a:Int, b:Int) -> Int{
        return a + b
    }

    使用 -> 指定返回值,在方法上swift有一个很好的特性:方法可以有多个返回值,-> 后面跟(),多个数据类型用分割, return 后面也是用()。

     
    // 计算两个数的和以及差
    func addAndSubtract(a:Int, b:Int) -> (Int, Int){
        return (a + b, a - b)
    }
     
    // 返回两个值
    var (result1, result2) = addAndSubtract(105)
     
    println(result1)
    println(result2)

           方法还支持闭包,看来swiftjavascript借鉴了不少。

     
    // 使用闭包计算三个数的和
    func fun1(a:Int, b:Int, c:Int) -> Int{
        func fun2() -> Int{
            return a + b;
        }
        return fun2() + c;
    }
     

     测试代码下载:https://github.com/baoyongzhang/HelloSwift/

  • 相关阅读:
    H5新增——html概述
    H5新增———html5概述
    ASP.NET Web API Demo OwinSelfHost 自宿主 Swagger Swashbuckle 在线文档
    如何写个死循环,既不独占线程,又不阻塞UI线程?
    C# 扩展TaskScheduler实现独立线程池,支持多任务批量处理,互不干扰,无缝兼容Task
    C# async await 异步执行方法封装 替代 BackgroundWorker
    巨坑!
    C# .NET Socket SocketHelper 高性能 5000客户端 异步接收数据
    一个简单的例子看明白 async await Task
    一个非常轻量级的 Web API Demo
  • 原文地址:https://www.cnblogs.com/baoyz/p/3771417.html
Copyright © 2020-2023  润新知