Swift的笔记和参考

原文:Swift的笔记和参考

好久没来了,趁着新语言Swift发布,继续钻研中!

Create Class 创建类 (多态效果)


// Create Class 创建类
class MyClass {

// Properties 成员变量

init() {
// Constructor 构造函数
}

// Method 成员方法
func doIt() {
println("doIt")
}

func doIt() -> Int {
return 0
}

func doIt(a:Int) -> Int {
return a
}

func doIt(a:Int, b:Int) -> Int {
return a + b
}

func doIt() -> String {
return ""
}

func doIt(a:String) -> String {
return a
}

func doIt(a:String, b:String) -> String {
return a + b
}

}

// Create / Using an Instance 创建 / 使用 一个实例
var a = MyClass()
a.doIt("Wang ", b: "Zhipeng")

Enums 枚举


// Enums 枚举
enum ComcSoftType: Int {

case DevelopmentEngineer = 1

case TestEngineer = 2

}

var myType = ComcSoftType.DevelopmentEngineer

Declaring Variables 变量的声明 (可选变量)


// Declaring Variables 变量的声明
var mutableDouble:Double = 1.0
mutableDouble = 2.0

let constantDouble:Double = 1.0
//constantDouble = 2.0 Error 错误

var autoDouble = 1.0

// Optional Value 可选变量 (新机制)
var optionDouble:Double? //此刻 optionDouble 根本没有分配内存,对其取地址: &optionDouble 为NULL
optionDouble = 1.0 //这时候开始 optionDouble 才会开始分配内存

if let defineDouble = optionDouble {
println("已经分配内存")
}
else {
println("没有分配内存")
}

Control Flow 控制流


// Control Flow 控制流
var condition = true
if condition {
println("正确")
}
else {
println("错误")
}

var val = "Four"
switch val {
case "One":
"One"
case "Two", "Three":
"Two, Three"
default:
"default"
}

// omits upper value, use ... to include 省略了上限值,使用 ... 包括
for i in 0..3 {
println("\(i)")
}

String Quick Examples 字符串的例子


// String Quick Examples 字符串的例子
var firstName = "Zhipeng"
var lastName = "Wang"
var helloString = "Hello, \(lastName) \(firstName)"

var tipString = "2499"
var tipInt = tipString.toInt()

extension Double {
init (string:String) {
self = Double(string.bridgeToObjectiveC().doubleValue)
}
}
tipString = "24.99"
var tipDouble = Double(string:tipString)

Array Quick Examples 数组的例子


// Array Quick Examples 数组的例子
var person1 = "One"
var person2 = "Two"
var array:String[] = [person1, person2]
array += "Three"
for person in array {
println("person: \(person)")
}
var personTwo = array[1]
println("personTwo: \(personTwo)")

Dictionary Quick Examples 字典的例子


var dic:Dictionary<String, String> = ["One": "1",
"Two": "2",
"Three": "3"]
dic["Three"] = "4" // Update Three
dic["One"] = nil // Delete One
for(key, value) in dic {
println("key: \(key), value: \(value)")
}

Swift的笔记和参考,布布扣,bubuko.com

时间: 2024-08-25 16:56:58

Swift的笔记和参考的相关文章

Swift学习笔记(4)--字符串及基本使用

String是例如"hello, world","海贼王" 这样的有序的Character(字符)类型的值的集合,通过String类型来表示. Swift 的String类型与 Foundation NSString类进行了无缝桥接.如果您利用 Cocoa 或 Cocoa Touch 中的 Foundation 框架进行工作.所有NSString API 都可以调用您创建的任意String类型的值.除此之外,还可以使用本章介绍的String特性.您也可以在任意要求传

记录:swift学习笔记0-1

swift还在不断的更新做细微的调整,都说早起的鸟儿有虫吃,那么我们早点出发吧,趁着国内绝大多数的coder们还没有开始大范围普遍应用. 网上有些大神说:swift很简单!我不同意这个观点,假如你用helloword来说它语法精简没错,但是这个简单的例子不能证明它功能简单! 我相信swift语言非常强大,拥有很多OC以前没有的超强大面向对象特性!想用好并不容易! 下面是:比较系统的整理了自己学习swift 的笔记,一方面用作记录,便于以后查阅,也分享给需要的朋友! 我是任海瑞,共勉!我与你还有很

Swift学习笔记(11)--类与结构体

类与结构是编程人员在代码中会经常用到的代码块.在类与结构中可以像定义常量,变量和函数一样,定义相关的属性和方法以此来实现各种功能. 和其它的编程语言不太相同的是,Swift不需要单独创建接口或者实现文件来使用类或者结构.Swift中的类或者结构可以在单文件中直接定义,一旦定义完成后,就能够被直接其它代码使用. 注意:一个类的实例一般被视作一个对象,但是在Swift中,类与结构更像是一个函数方法,在后续的章节中更多地是讲述类和结构的功能性. 1.类和结构的异同 类和结构有一些相似的地方,它们都可以

Swift学习笔记 - 可选 ?

可选类型 使用可选类型(optionals)来处理值可能缺失的情况.可选类型表示: 有值,等于 x 或者 没有值 注意:C 和 Objective-C 中并没有可选类型这个概念.最接近的是 Objective-C 中的一个特性,一个方法要不返回一个对象要不返回nil,nil表示“缺少一个合法的对象”.然而,这只对对象起作用——对于结构体,基本的 C 类型或者枚举类型不起作用.对于这些类型,Objective-C 方法一般会返回一个特殊值(比如NSNotFound)来暗示值缺失.这种方法假设方法的

Swift开发笔记

Swift开发笔记(一) 刚开始接触XCode时,整个操作逻辑与Android Studio.Visual Studio等是完全不同的,因此本文围绕IOS中控件的设置.事件的注册来简单的了解IOS开发 1.新建一个Xcode项目,项目目录大致如图: 2.在Main.storyboard添加控件 首先要显示右侧的工具栏(Utilities),之后选择显示Object Library,就可以找到常用的一些控件了,然后添加几个控件到界面中 3.将控件和ViewController进行关联 此时要将Ed

SWIFT学习笔记05

1.Swift 无需写break,所以不会发生这种贯穿(fallthrough)的情况.2.//用不到变量名,可用"_"替换 for _ in 1...power { answer *= base } 3.case 可以匹配更多的类型模式,包括区间匹配(range matching),元组(tuple)和特定类型的描述. 可以这样用case case 1...3: naturalCount = "a few" 4.如果存在多个匹配,那么只会执行第一个被匹配到的 ca

SWIFT学习笔记02

1.//下面的这些浮点字面量都等于十进制的12.1875: let decimalDouble = 12.1875 let exponentDouble = 1.21875e1 let hexadecimalDouble = 0xC.3p0//==12+3*(1/16) 2.//类型别名,用typealias关键字来定义类型别名 typealias AudioSample = UInt16 var maxAmplitudeFound = AudioSample.min 3.//元组 let ht

swift学习笔记(三)关于拷贝和引用

在swift提供的基本数据类型中,包括Int ,Float,Double,String,Enumeration,Structure,Dictionary都属于值拷贝类型. 闭包和函数同属引用类型 捕获则为拷贝.捕获即定义这些常量和变量的原作用域已不存在,闭包仍然可以在闭包函数体内引用和修改这些值 class属于引用类型. Array的情况稍微复杂一些,下面主要对集合类型进行分析: 一.关于Dictionary:无论何时将一个字典实例赋给一个常量,或者传递给一个函数方法时,在赋值或调用发生时,都会

Swift学习笔记十二:下标脚本(subscript)

下标脚本就是对一个东西通过索引,快速取值的一种语法,例如数组的a[0].这就是一个下标脚本.通过索引0来快速取值.在Swift中,我们可以对类(Class).结构体(structure)和枚举(enumeration)中自己定义下标脚本的语法 一.常规定义 class Student{ var scores:Int[] = Array(count:5,repeatedValue:0) subscript(index:Int) -> Int{ get{ return scores[index];