美文网首页
Swift中出现的一些我之前不知道或者新出炉的知识

Swift中出现的一些我之前不知道或者新出炉的知识

作者: Even会编程 | 来源:发表于2016-05-23 17:38 被阅读14次

定义变量和常量时可以使用字符、数字、和“Unicode”,没错,就是这个Unicode,来看一下代码吧!

let 你好 = “Hello!”
print(你好)
输出结果:Hello!

我勒个去,简直逆天了,回头我就这样写一条语句,哇咔咔

let 你猜我会输出什么 = “这条语句被藏在一个你看不到的地方”
print(你猜我会输出什么)
输出结果:这条语句被藏在一个你看不到的地方

你猜猜这个货会输出什么值?

let variable = 1_000_1
输出结果:10001

是的,上面这个货就是“一万零一”,这个下划线就是标记来格式化显示的,也就是说你看着会更顺眼,就这样?是的,就这样!好吧,来看一个之前我没有在意的一个写法

let money = 1.25e5
值:125000

好神奇,什么,你知道了,好吧,这个其实可以用,特别是一些专业项目,比如会计软件,银行系统啥的,我也不懂,瞎猜的!哈哈...对了,还有个好用的家伙,之前学习java,培训老师总会问Int类型最大值多少?最小值多少?等等之类的,以后再也不会回答错了!看好了啊

print(Int8.min, Int8.max)
输出结果:-128,127

之前我就设想能不能出来一种牛掰的字符串拼接方式,没想到真的实现了

let hello = "你好"
print("\(hello)世界")
输出结果:你好世界

看懂某?就是用(变量)的方式把这个变量串接到字符串里了,好贴心的小技巧,还有一个我比较喜欢的设计,字符串终于可以用==符号比较了number

let string = "15"
if "15" == string {
    print("你猜对了")
}
输出结果:你猜对了(感觉好Low啊,没错,我就是英文差,而且不擅长写例子-_-)

还有还有,之前一直在用的Object.isKindOfClass(Object.class)终于被简化了!哈哈...简直太简化了

let str: String = "不用太在意我,我就是个跑龙套的"
if str is String {
    print("你丫就嘚瑟吧,老子早晚也会红的")
}
输出结果:你丫就嘚瑟吧,老子早晚也会红的

默认参数值(Default Parameter Values)
你可以在函数体中为每个参数定义默认值(Deafult Values)。当默认值被定义后,调用这个函数时可以忽略这个参数。

func someFunction(parameterWithDefault: Int = 12) {
    // function body goes here
    // if no arguments are passed to the function call,
    // value of parameterWithDefault is 12
}
someFunction(6) // parameterWithDefault is 6
someFunction() // parameterWithDefault is 12

下面这个家伙叫可变参数(Variadic Parameters)
一个可变参数(variadic parameter)可以接受零个或多个值。函数调用时,你可以用可变参数来指定函数参数可以被传入不确定数量的输入值。通过在变量类型名后面加入(...)的方式来定义可变参数。
可变参数的传入值在函数体中变为此类型的一个数组。例如,一个叫做 numbers的 Double...型可变参数,在函数体内可以当做一个叫 numbers的 [Double]型的数组常量。下面的这个函数用来计算一组任意长度数字的算术平均数(arithmetic mean)

func arithmeticMean(numbers: Double...) -> Double {
    var total: Double = 0
    for number in numbers {
        total += number 
    } 
    return total / Double(numbers.count)
}
arithmeticMean(1, 2, 3, 4, 5) 
// returns 3.0, which is the arithmetic mean of these five numbers
arithmeticMean(3, 8.25, 18.75)
// returns 10.0, which is the arithmetic mean of these three numbers

目前还在熟悉中,在用Swift写我们的新项目,以后也准备一直用下去,我有一种预感,我会爱上Swift的,另外,还有一些知识点,比如可选类型、类型安全、元组、多返回值、闭包什么的,还有异常处理机制,我就不说了,太费劲,回头有时间再跟大家好好唠唠!

相关文章

网友评论

      本文标题:Swift中出现的一些我之前不知道或者新出炉的知识

      本文链接:https://www.haomeiwen.com/subject/xuiarttx.html