Swift 小白们速度入门
美国那哥们4小时自学swift 写出了flappy bird。 你们呢
1. 首先 打开你们的Xcode6. 然后去点iOS、 然后点击single、 就是会自带storyBord的模板。 然后再viewController里边开始代码
1 // 2 // ViewController.swift 3 // SwiftLesson_1 4 // 5 // Created by 薛雨仑 on 14-10-2. 6 // Copyright (c) 2014年 Dylan. All rights reserved. 7 // 8 9 import UIKit 10 11 class ViewController: UIViewController { 12 13 override func viewDidLoad() { 14 super.viewDidLoad() 15 16 // newButton 17 var button = UIButton(); 18 button.frame = CGRectMake(20, 20, 280, 20); 19 button.backgroundColor = UIColor.blueColor(); 20 self.view .addSubview(button); 21 22 // 变量 23 var string = "Hello" 24 var number = 10 25 26 // 常量 27 let constString = "constString" 28 let constInt = 20 29 30 println(string) 31 println(number) 32 println(constString) 33 println(constInt) 34 35 // string 36 var str_1 = "Alice" 37 var str_2 = "Dylan" 38 var str = str_1 + " and " + str_2 39 println(str) 40 41 // int string (Var) 42 let num = 24 43 var name = "Alice" 44 println("she's name is (name), age is (num)") 45 46 // kind type can't add 47 let num_1 = 20; 48 var name_1 = "Dylan" 49 var des = "my name is (name_1)" + ", age " + String(num_1) 50 println(des) 51 52 /** 53 Int、Float、Double、Bool、Character、String 54 55 Array、Dictionary、元组类型(Tuple)、可选类型(Optional) 56 57 注意:数据类型的首字母都是大写的 58 */ 59 60 // 指定变量的类型 一般来讲,不用指定。 swift自动判断是什么类型 61 let age:Int = 10 62 63 // 变量在使用之前必须初始化 64 let a = 10; 65 66 // 最值 输出一种数据类型的范围 67 let minValue = UInt16.min 68 let maxValue = UInt16.max 69 70 println("(minValue), (maxValue)") 71 72 // 尽量使用int 73 /** 74 (1)十进制数:没有前缀 75 76 let i1 = 10 // 10 77 78 (2)二进制数:以0b为前缀 79 80 let i2 = 0b1010 // 10 81 82 (3)八进制数:以0o为前缀 83 84 let i3 = 0o12 // 10 85 86 (4)十六进制数:以0x为前缀 87 88 let i4 = 0xA // 10 89 */ 90 91 // 如果不明确说明 浮点数默认为double类型 92 let number1 = 1.213 93 94 let number2 = 12e2 95 96 println(number2) 97 98 /** 99 数字可以增加额外的格式,使它们更容易阅读 100 101 (1)可以增加额外的零 0 102 103 let money = 001999 // 1999 104 105 let money2 = 001999.000 // 1999.0 106 107 (2)可以增加额外的下划线 _ ,以增强可读性 108 109 let oneMillion1 = 1_000_000 // 1000000 110 111 let oneMillion2 = 100_0000 // 1000000 112 113 let overOneMillion = 1_000_000.000_001 // 1000000.000001 114 115 说明:增加了额外的零 0和下划线 _ ,并不会影响原来的数值大小 116 */ 117 118 let money = 1_000_000_000_000 119 println(money) 120 121 // 两个类型不同的数值 不能直接运算 需要强制转换 122 let money_1:Int = 20 123 let money_2:Int16 = 1 124 let monet_3 = money_1 + Int(money_2) 125 126 // 可以在初始化的时候混合相加 127 let number_dou = 3 + 0.14 128 129 // typealias 重命名 相当于oc typedef 130 typealias MyInt = Int 131 let number_my:MyInt = 10 132 133 // 1对1赋值 多对多赋值 134 let v = 10 135 var c = 20 136 137 let (x, y, z) = (1, 2, 3) 138 139 // 跟COC不一样的是:Swift的赋值运算符没有返回值 140 // 一定要记住 没有返回值 不可以去做判断条件的哦 141 142 // swift 的取余 支持浮点数 143 let douNum = 1.41 144 println(douNum%1.1) 145 146 // 注意:在C语言中:0是假,非0就是真;而在Swift中没有这种概念 147 // 所以在swift中 的判断 只能用true 或者 false 来判断 148 149 /** 150 * @Author Hacker-David.Xue, 14-10-02 16:10:56 151 * 152 * 闭合范围运算符:a...b,表示[a, b],包含a和b 153 154 半闭合范围运算符:a..<b,表示[a, b),包含a,不包含b 155 */ 156 for i in 0...5 { 157 println(i) 158 } 159 160 for i1 in 0..<5 { 161 println(i1) 162 } 163 164 // 元组 let 创建的是不可变的 165 let positon = (x: 10, y:20) 166 let person = (name: "Alice") 167 168 var(x1, y1) = (10, 20) 169 var position_1 = (10, 20) 170 println(position_1.0) 171 println(position_1.1) 172 173 var position = (x: 10, y: 20) 174 println(position) 175 176 // 指定元素的类型 就不能指定元素的名称 177 var position_3: (Int, String) = (10, "string") 178 179 // 赋值 180 var position_4 = (20, 30) 181 var (x3, y3) = position_4 182 } 183 184 185 override func didReceiveMemoryWarning() { 186 super.didReceiveMemoryWarning() 187 // Dispose of any resources that can be recreated. 188 } 189 }