/*******************************************************************************/
// 协议
protocol Description{
func description() -> String
mutating func aMutatingMethod()
class func ...
分类:
其他好文 时间:
2014-06-22 22:33:55
阅读次数:
169
一。通过闭包和函数实现属性的默认值
当某个存储属性的默认值需要定制时,可以通过闭包或全局函数来为其提供定制的默认值。
注:全局函数结构体和枚举使用关键字static标注 函数则使用class关键字标注
当对一个属性使用闭包函数进行赋值时,每当此属性所述的类型被创建实例时,对应的闭包或函数会被调用,而他们的返回值会被作为属性的默认值。
ESC:Class SomeCLass{
let ...
分类:
其他好文 时间:
2014-06-22 22:28:17
阅读次数:
250
Swift提供了类C语言类似的控制流结构。包括for循环和while循环来多次执行任务,if和switch语句根据不同的条件执行不同的分支代码,break和continue语句将执行流程跳转到其他语句。除了C里面传统的for-条件-递增循环,Swift还增加了for-in循环使得遍历数组,字典,范围,字符串或者其他序列都很简单。...
分类:
其他好文 时间:
2014-06-22 22:27:43
阅读次数:
391
swift定义可选型的时候,要用“?”,但是在swift的标准库中,可选型的定义是Optional,”?”只是个简写形式。
var myNum: Int?
var myNum: Optional
两句等价
可以看出可选型是个泛型,而Optional又是个枚举,Optional可以是 None,也可以是Some(T):
protocol Reflectable {...
分类:
其他好文 时间:
2014-06-22 22:20:27
阅读次数:
259
泛型
泛型是为了解决在针对不同数据类型,而做了同一种功能的操作导致的每个类型我们都要写一份代码的问题。 有了泛型,我们可以只写一份逻辑代码,而适应于不同的数据类型。
func swapInt(inout num1:Int, inout num2: Int) {
var tmp = num1
num1 = num2
num2 = tmp
}
...
分类:
其他好文 时间:
2014-06-22 20:29:13
阅读次数:
204
协议定义了适合某个特定任务或功能需要的方法、属性和其它需求的一个蓝图。协议本身不提供这些需求的实现,它只是描述了一个任务或功能实现的蓝图。
协议与java 语言中的接口定义类似,都是描述了一个实现可以干什么,而本身却不包含任何实现。与接口不同的是swift语言定义的协议可以被一个类、结构、或者枚举采用,来提供协议规定需求的实际实现,而java 语言的接口只能被类实现。
...
分类:
移动开发 时间:
2014-06-22 18:53:21
阅读次数:
200
与Object-c一样,swift使用自动引用计数来跟踪并管理应用使用的内存。当实例不再被使用时,及retainCount=0时,会自动释放是理所占用的内存空间。
注:引用计数仅适用于类的实例,因为struct和enumeration属于值类型,也就不牵涉引用,所以其存储和管理方式并不是引用计数。
当一个实例被初始化时,系统会自动分配一定的内存空间,用于管理属性和方法。当实例对象不再被使用时,...
分类:
其他好文 时间:
2014-06-22 18:34:42
阅读次数:
206
高级运算符
位运算符
按位取反: ~
按位与运算: &
按位或运算: |
按位异或运算: ^
按位左移运算:
按位右移动算: >>
溢出运算符
自从swift里面提供了所谓的类型安全之后,我们就不能再用一个 Int.max 进行+1操作了,这样会导致报错。所以swift又提供了一个让我们在知道这会溢出的前提下,继续+1的溢出运算符,这听上去也不错。...
分类:
其他好文 时间:
2014-06-22 18:00:23
阅读次数:
283
字典初始化 基本语法: [key 1: value 1, key 2: value 2, key 3: value3] var airports: Dictionary = ["TYO": "Tokyo", "DUB":"Dublin"] 字典追加元素 var airports: Dictionary = ["TYO": "Tokyo", "DUB":"Dublin...
分类:
其他好文 时间:
2014-06-22 16:49:01
阅读次数:
173
// 函数写法初体验
func getMyName(firstName first:String, lastName last:String) -> String{
//return first + "-" + last
return first + last
}
var myName = getMyName(firstName: "hu", lastName: "mingta...
分类:
其他好文 时间:
2014-06-21 22:53:20
阅读次数:
211