码迷,mamicode.com
首页 > 编程语言 > 详细

Swift的简单使用

时间:2016-05-07 09:01:59      阅读:211      评论:0      收藏:0      [点我收藏+]

标签:

“Swift 是一种新的编程语言,用于编写 iOS,OS X 和 watchOS应用程序。Swift 结合了 C 和 Objective-C 的优点并且不受 C 兼容性的限制。Swift 采用安全的编程模式并添加了很多新特性,这将使编程更简单,更灵活,也更有趣。Swift 是基于成熟而且倍受喜爱的 Cocoa 和 Cocoa Touch 框架,它的降临将重新定义软件开发。


Swift 的开发从很久之前就开始了。为了给 Swift 打好基础,苹果公司改进了编译器,调试器和框架结构。我们使用自动引用计数(Automatic Reference Counting, ARC)来简化内存管理。我们在 Foundation 和 Cocoa 的基础上构建框架栈使其完全现代化和标准化。 Objective-C 本身支持块、集合语法和模块,所以框架可以轻松支持现代编程语言技术[…]”


常量和变量

func demo3() {
    // 仅仅定义了类型,并没有设置数值
    let x: Int

    // 常量定义完成类型后,可以有`一次`设置机会
    x = 10
    // 设置之后,不允许再修改
    // x = 20

    // Constant 'x' used before being initialized
    // 常量在使用之前,必须要做初始化
    print(x)
}

/// 如果定义的变量/常量需要指定自己需要的类型,可以使用 `:类型`
func demo2() {
    let x: Double = 10
    let y = 10.5

    print(x + y)
}

/// 自动推导 - 可以根据右侧的计算结果,推导出左侧变量/常量的类型
/// Option + Click 热键非常重要,可以快速查看变量的准确类型
/// 但是:Swift 对类型转换要求非常严格,任何不同类型之间的数据,不允许计算
/// Int 和 Double 都是结构体,而 不是基本数据类型!
func demo1() {

    // 整数默认类型是 Int,如果 64 位机器,long/32 位机器就是 int
    let x = 10

    // Swift 中,小数默认是 Double,双精度,精度更高
    // OC 默认是 float,浮点数
    let y = 10.5

    // Binary operator '+' cannot be applied to operands of type 'Int' and 'Double'
    // print(x + y)
    // 如果要给不同类型的数据进行计算,必须手动转换类型
    // OC 中如果要做类型转换 `(int)y` 
    // Swift中,使用的是 `Int()` 构造函数 `init`
    print(x + Int(y))
    print(Double(x) + y)
}

func demo() {
    // 定义常量 let,一旦设置,不能修改
    // 定义变量 var,一旦设置,可以修改
    // int x = 10;
    let x = 10
    // x = 20

    var y = 20
    y = 100

    print(x)
    print(y)
}
知识点整理

常量与变量的定义
定义常量 let,一旦设置,不能修改;定义变量 var,一旦设置,可以修改
let x = 10
// x = 20 // 常量无法修改
var y = 20
y = 100
整数与小数的默认类型
整数默认类型是 Int,如果 64 位机器,long/32 位机器就是 int 小数默认是 Double,双精度,精度更高
不同数据类型之间的计算,需要注意什么
Swift 对类型转换要求非常严格,任何不同类型之间的数据,不允许计算,必须手动转换类型
let x = 10
let y = 10.5
// Binary operator '+' cannot be applied to operands of type 'Int' and 'Double'
// print(x + y)
// 如果要给不同类型的数据进行计算,必须手动转换类型
// OC 中如果要做类型转换 `(int)y` 
// Swift中,使用的是 `Int()` 构造函数 `init`
print(x + Int(y))
print(Double(x) + y)
自动推导是什么
可以根据右侧的计算结果,推导出左侧变量/常量的类型
// 因为10 默认是Int类型的,推导出x的类型是Int
let x = 10
// 因为10.5 默认是Double类型的,推导出y的类型是Double
let y = 10.5
option + Click 热键非常重要,可以快速查看变量的准确类型
显示的指定常量或变量的类型
如果定义的变量/常量需要指定自己需要的类型,可以使用 :类型
// 显示指定x的类型是Double,使用 :类型
let x: Double = 10
常量和变量的使用注意
常量或变量在使用之前,必须要做初始化

let x: Int
// 没有初始化,会报异常:Constant 'x' used before being initialized
print(x)
常量定义完成类型后,可以有一次设置机会,常量设置之后,不允许再修改

let x: Int
// 常量定义完成类型后,可以有`一次`设置机会
x = 10
// 常量设置之后,不允许再修改
// x = 20
常量和变量的选择

只有在需要改变的时候,才应该使用 var
如果从来没有变过的变量,Xcode 会提示使用 let
Int 和 Double的本质是什么
结构体

Constant 'x' used before being initialized(常量在使用之前,必须要做初始化)
Binary operator '+' cannot be applied to operands of type 'Int' and 'Double' (+ 不能 应用在 Int 类型 和 Double类型)
补充:

所有的Swift基本数据类型都是结构体 Int Double Bool String Float
Swift中只要是常量就用let,只要是变量就用var






Swift的简单使用

标签:

原文地址:http://blog.csdn.net/qq_32166767/article/details/51335508

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!