献给一起学习的小伙伴
- 做OC开发也快2年了,最近公司要求Swift来开发,组里的小伙伴就叫我整理个资料给他们,所以就抽空写了这个,每天写一点,把OC 和** Swift **的不同点都标注出来,方便大家对比,我也小小的回顾一下,希望看的小伙伴们持续关注.
1-Swift最基本的语法变化
- 导入框架 import UIKit
定义标识符时,必须声明该标识符是变量还是常量
声明标识符的格式:变量/常量关键字 名称 : 数据类型
语句结束时不需要加 ;
Swift中的打印语句:print(打印的内容)
oc版 #import "ViewController.h" NSLog(@"Hello,oc"); swift版 import UIKit var str = "Hello, playground" print("Hello,swift")
2-常量 变量
- 在Swift中规定:在定义一个标识符时必须明确说明该标识符是一个常量还是变量
- 使用let来定义常量,定义之后不可以修改
- 使用var来定义变量,定义之后可以修改
oc版 int a = 0; double const b = 2.333; b = 2.12; //被const 修饰 不可变 swift版 //不可修改 let num1 = 10 //可以修改 var num2 = 20 num2 = 10086
3-Swift中数据类型
- Swift中的数据类型也有:整型/浮点型/对象类型/结构体类型等等
oc版 //这个就没什么好说的了 都差不多 swift版 // 定义一个Int类型的变量num1,并且赋值为100 var num1 : Int = 100 // 定义一个Double类型的常量num2,并且赋值为3.1415 let num2 : Double = 3.1415
- Swift中的类型推导
- Swift是强类型的语言
- Swift中任何一个标识符都有明确的类型
oc版 int a = 10; double b = 2.333; swift版 //类型推导 let num1 : Double = 3.14 //可以简写为 let num2 = 3.14 //字符串也同样可以推导 let string : String = "今天天气真好" let string1 = "你睁眼说瞎话吗?"
- 注意:
- 如果定义一个标识符时有直接进行赋值,那么标识符后面的类型可以省略.
因为Swift有类型推导,会自动根据后面的赋值来决定前面的标识符的数据类型
总结起来这个类型推导还挺好用的
4- Swift中基本运算
- Swift中在进行基本运算时必须保证类型一致,否则会出错
- 相同类型之间才可以进行运算
- 因为Swift中没有隐式转换
- 数据类型的转化
- Int类型转成Double类型:Double(标识符)
- Double类型转成Int类型:Int(标识符)
oc版 //oc版有强制类型转换 相对方便点 int a = 10; double b = 3.13; int c = a + b; double d = a + b; NSLog(@"%d--%f",c,d); // 13--13.130000 swift版 let num = 98 print(num) var a = 3.1415926 print(a) var b = 0; b = num + Int(a) print(b) var w = 0.0; w = Double(num) + a print(w) print("很简单也没什么难度啦")
在预告下,下次的更新内容:循环语句 字符串 数组 字典等等,不忙的话 明天会继续更新.
写于2016年4月26日晚
来源:https://www.cnblogs.com/hongdongheng/p/5436789.html