/*: 创建对象 * OC: [[UIView alloc] init] [[UIView alloc] initWithFrame:] * Swift: UIView() UIView(frame: ) * 从OC转换为Swift的规律: alloc initXXX --> (xxxx:) 分号 * 在OC中每一条语句后面必须跟上一个;“,Swift中如果一行只有一条语句,那么;可以省略 调用方法 * OC: [UIColor redColor]; * Swift: UIColor.redColor() 枚举 * OC: UIButtonTypeContactAdd * Swift: UIButtonType.ContactAdd */
import UIKit
/*: 输出: * C : printf("Hello,World!"); * OC : NSLog(@"Hello,World!"); * Swift1.2 : println("Hello,World!") * Swift2.0 : print("Hello,World!") */
print("Hello,World!")
// 常量和变量的定义
/*: 常量和变量 * 变量: var * 常量: let * 格式: 修饰符 变量/常量名称: 数据类型 = 值 数据类型 * 只要将OC中的数据类型第一个字母转换为大写,就是Swift中的数据类型 注意点: * 在Swift开发中,一般情况下先用let,只要需要修改数据时才用var,使用let的好处,可以避免数据被修改,可以保证数据安全性 */
// 变量
/*: 类型推导: * Swift中如果在定义变量/常量时进行初始化,那么数据类型可以不用写,系统会自动根据右边的复制推导出变量/常量的类型 * Swift开发中能不写数据类型就不写数据类型,尽量使用编译器的自动推导 * 使用自动类型推导好处: 大大降低代码中的冗余代码 */
/*: 1.先定义再初始化 * var num * 报错: 没有指定数据类型(type annotation missing in pattern),在Swift中如果想要先定义一个变量,以后使用时再初始化必须在定义时告诉编译器变量的类型(类型标注) */
var num: Int
num = 10
/*: 2.定义的同时初始化 * 在Swift中如果定义的同时初始化一个变量,可以不用写数据类型,编译期会根据初始化的值自动推断出变量的类型(其它语言是没有类型推断的) * 以后在开发中如果在定义的同时初始化就没有必要指定数据类型,除非需要明确数据类型的长度或者定义时不初始化才需要指定数据类型 */
var num1: Int = 11
var num2 = 22
// 常量
/*: 常量: * OC: const int num = 10; * Swift: let num = 10 错误: * let num : Int * Swift中的常量必须在定义时初始化(OC可以不初始化),否则会报错 * 常量的用途: 某些值以后不需要改变,例如身份证 */
let num3: Int = 33
let num4 = 99
// 常量和变量名的命名规则
/*: 常量和变量名的命名规则 * “你可以用任何你喜欢的字符作为常量和变量名,包括 Unicode 字符:” * “常量与变量名不能包含数学符号,箭头,保留的(或者非法的)Unicode 码位,连线与制表符。也不能以数字开头,但是可以在常量与变量名的其他地方包含数字。” 错误: * var 3x = 10 * var x+-3 = 10 */
var