     return false
 }
 
-func lessThanTen(num: Int) -> Bool {
+func lessThanTen(num:Int) -> Bool {
     return num < 10
 }
 
-var numbers = [12, 8, 3, 45, 23]
+var numbers = [12, 3, 8, 34];
 //lessThanTen函数 当做 参数 传入 hasSmallNum函数 ！！！
-hasSmallNum(numbers, condition: lessThanTen)
-
-
-// 6.函数实际上是一种特殊的闭包:它是一段能之后被调取的代码
-let mappedNumbers = numbers.map({
-    // 可以使用{}来创建一个匿名闭包。使用in将参数和返回值类型声明与闭包函数体进行分离
-    (number: Int) -> Int in
-    let result = 3 * number
+hasSmallNum(numArray: numbers, condition: lessThanTen)
+
+
+// 6.函数实际上是一种特殊的闭包: 使用 {} 来创建一个匿名闭包
+
+let mappedNumbers = numbers.map { (num:Int) -> Int in
+    // 使用 in 将参数和返回值类型的声明与闭包函数体进行分离
+    let result = 3 * num
     return result
-})
-print(mappedNumbers) // [36, 24, 9, 135, 69]
-
+}
+print(mappedNumbers)
 
 // 6.1 如果一个闭包的类型已知，比如作为一个回调函数,
 // 可以忽略参数的类型和返回值。单个语句闭包会把它语句的值当做结果返回。
-let mapNumbers = numbers.map({num in num * 3})
-print(mapNumbers)  //[36, 24, 9, 135, 69]
-
+
+let mapNums = numbers.map { num  in
+    num * 3
+}
+print(mapNums)
 
 // 6.2 对数组里的元素从小到大排序
-// 当一个闭包是传给函数的唯一参数，可以完全忽略括号
-let sortedNumbers = numbers.sort{ $0 < $1}
+let sortedNumbers = numbers.sorted { (n1, n2) -> Bool in
+    return n1 > n2
+}
 print(sortedNumbers)
+
 
 
 

    
    func simpleDescription() -> String {
        switch self {
        case .Ace:
            return "这是扑克牌里的A"
        case .Jack:


print("Hello中国".stringLength) //11
print("Hello".caculateStringLength()) //5


/*


// ----------------------错误处理（Error Handling）----------------
