更新beta6的部分
beta6 断言现在可以使用字符串内插语法 beta6 字符串和字符的链接方式发生变化 beta6 属性声明章节 新增availably属性(部分,剩下的2014.9.5更新)
This commit is contained in:
@ -657,7 +657,7 @@ if let definiteString = assumedString {
|
||||
<a name="assertions"></a>
|
||||
## 断言
|
||||
|
||||
可选类型可以让你判断值是否存在,你可以在代码中优雅地处理值缺失的情况。然而,在某些情况下,如果值缺失或者值并不满足特定的条件,你的代码可能并不需要继续执行。这时,你可以在你的代码中触发一个_断言(assertion)_来结束代码运行并通过调试来找到值缺失的原因。
|
||||
可选类型可以让你判断值是否存在,你可以在代码中优雅地处理值缺失的情况。然而,在某些情况下,如果值缺失或者值并不满足特定的条件,你的代码可能没办法继续执行。这时,你可以在你的代码中触发一个_断言(assertion)_来结束代码运行并通过调试来找到值缺失的原因。
|
||||
|
||||
### 使用断言进行调试
|
||||
|
||||
@ -673,9 +673,9 @@ assert(age >= 0, "A person's age cannot be less than zero")
|
||||
// 因为 age < 0,所以断言会触发
|
||||
```
|
||||
|
||||
在这个例子中,只有`age >= 0`为`true`的时候代码运行才会继续,也就是说,当`age`的值非负的时候。如果`age`的值是负数,就像代码中那样,`age >= 0`为`false`,断言被触发,结束应用。
|
||||
在这个例子中,只有`age >= 0`为`true`的时候,即`age`的值非负的时候,代码运行才会继续。如果`age`的值是负数,就像代码中那样,`age >= 0`为`false`,断言被触发,结束应用。
|
||||
|
||||
断言信息不能使用字符串插值。断言信息可以省略,就像这样:
|
||||
断言信息如果不需要,可以被省略,就像这样:
|
||||
|
||||
```swift
|
||||
assert(age >= 0)
|
||||
|
||||
@ -167,30 +167,29 @@ println("unusualMenagerie has \(countElements(unusualMenagerie)) characters")
|
||||
<a name="concatenating_strings_and_characters"></a>
|
||||
## 连接字符串和字符 (Concatenating Strings and Characters)
|
||||
|
||||
字符串和字符的值可以通过加法运算符(`+`)相加在一起并创建一个新的字符串值:
|
||||
字符串可以通过加法运算符(`+`)相加在一起(或称“串联”)并创建一个新的字符串:
|
||||
|
||||
```swift
|
||||
let string1 = "hello"
|
||||
let string2 = " there"
|
||||
let character1: Character = "!"
|
||||
let character2: Character = "?"
|
||||
|
||||
let stringPlusCharacter = string1 + character1 // 等于 "hello!"
|
||||
let stringPlusString = string1 + string2 // 等于 "hello there"
|
||||
let characterPlusString = character1 + string1 // 等于 "!hello"
|
||||
let characterPlusCharacter = character1 + character2 // 等于 "!?"
|
||||
var welcome = string1 + string2
|
||||
// welcome 现在等于 "hello there"
|
||||
```
|
||||
|
||||
您也可以通过加法赋值运算符 (`+=`) 将一个字符串或者字符添加到一个已经存在字符串变量上:
|
||||
您也可以通过加法赋值运算符 (`+=`) 将一个字符串添加到一个已经存在字符串变量上:
|
||||
|
||||
```swift
|
||||
var instruction = "look over"
|
||||
instruction += string2
|
||||
// instruction 现在等于 "look over there"
|
||||
// instruction 现在等于 "look over there"
|
||||
|
||||
var welcome = "good morning"
|
||||
welcome += character1
|
||||
// welcome 现在等于 "good morning!"
|
||||
```
|
||||
你可以用将`append`方法将一个字符附加到一个字符串变量的尾部:
|
||||
|
||||
```swift
|
||||
let exclamationMark: Character = "!"
|
||||
welcome.append(exclamationMark)
|
||||
// welcome 现在等于 "hello there!"
|
||||
```
|
||||
|
||||
> 注意:
|
||||
|
||||
@ -223,7 +223,7 @@ protocol SomeProtocol {
|
||||
|
||||
**协议构造器规定在类中的实现**
|
||||
|
||||
你可以在协议的遵循类中把协议构造器规定实现为指定构造器或者便利构造器。在这两种情况下,你都必须给构造器实现标上"required"修饰符:
|
||||
你可以在遵循该协议的类中实现构造器,并指定其为类的特定构造器或者便捷构造器。在这两种情况下,你都必须给构造器实现标上"required"修饰符:
|
||||
|
||||
```swift
|
||||
class SomeClass: SomeProtocol {
|
||||
|
||||
Reference in New Issue
Block a user