原文:http://coolketang.com/staticCoding/5a992501a22b9d00443914f0.html
1. 本节课将为你演示一些常见的内部函数,熟练掌握这些内部函数的使用,可以提高你的开发效率。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/7b76c764854f68c3b0e8b5b02d701ada.webp?x-image-process=image/format,png)
2. 系统提供了各种运算符,帮助开发者进行快速运算。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/08c27ea37bb940e6383deccefa4907db.webp?x-image-process=image/format,png)
3. 同时也提供了一些定义好的函数,例如该函数用来获得参数的绝对值。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/f45a7153da27e71479b4b880f9064a96.webp?x-image-process=image/format,png)
4. 接着是断言函数,当其参数的值为真时,函数被正常执行。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/e4825727bf43283521296d75d1fd2452.webp?x-image-process=image/format,png)
5. 当其参数的值为假时,则抛出异常。该函数常用于程序调试和异常处理。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/9164935282cfb4514acbe5a41854c59b.webp?x-image-process=image/format,png)
6. 获得两个参数中的最大值。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/75bcbb55a1ccc039e43fd64baeefe9c2.webp?x-image-process=image/format,png)
7. 该函数支持任意数量的参数的值。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/45c5ffb2138a835dc4df35b61a3dcc25.webp?x-image-process=image/format,png)
8. 获得参数之中的最小值。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/417740cc719b1fb51e152186e839aff5.webp?x-image-process=image/format,png)
9. 输出函数同样支持多个参数。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/14e58c59196351dfa86e8a6be2646115.webp?x-image-process=image/format,png)
10. 调试输出函数也具有同样的功能。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/fb211b22207a5cf55c6614f24baf109d.webp?x-image-process=image/format,png)
11. 甚至可以在输出时,使用分隔符对各项内容进行分隔,以方便日志的观察和理解。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/8b15801379abcfa767530a8b3550e39d.webp?x-image-process=image/format,png)
12. 可以自定义输出内容的末尾。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/0d7d9424eda6357e67e66e5b659af967.webp?x-image-process=image/format,png)
13. 定义一个具有5个重复字符串的数组。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/9430d928d3276077122f6d91a83b8216.webp?x-image-process=image/format,png)
14. 通过一个循环语句,对该数组进行遍历,并在控制台输出元素的内容。点击底部的显示调试区图标,打开控制台并观察输出的结果。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/c12a54089a7239ba703975485bdb7bdd.webp?x-image-process=image/format,png)
15. 控制台输出了5个star,注意第一个star位于前一条日志的尾部。再次点击底部的显示调试区图标,隐藏控制台。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/6c9040bd6408a362b5a095fe59832760.webp?x-image-process=image/format,png)
16. 继续编写代码,尝试其它的内部函数。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/28729bf6e500e7848a4c85eff8a50c92.webp?x-image-process=image/format,png)
17. 定义两个字符串变量。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/d19d87ebc5aa89532d95c59adf0d176f.webp?x-image-process=image/format,png)
18. 该函数用来交换两个变量的值。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/daf0b9fa67c51e8622dca039a9a2427b.webp?x-image-process=image/format,png)
19. 通过第26行和第27行右侧的结果可以看出,两个变量的值发生了变换。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/eeb824d254809020cd8ebcd5491b86e7.webp?x-image-process=image/format,png)
20. 获得参数的数据类型。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/87344a0528331b0b380ec8fa448dc5ad.webp?x-image-process=image/format,png)
21. 继续尝试该函数的使用,并观察右侧实时反馈区显示的结果。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/c7d0326be4ae4f15c988ed6e14e9f94f.webp?x-image-process=image/format,png)
22. 通过过滤函数,可以对需要循环的数组进行过滤,在此只对3的倍数进行循环遍历。点击底部的显示调试区图标,打开控制台并观察输出的结果。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/a5885f7a0d5a883e49a10f2dea8f1bb5.webp?x-image-process=image/format,png)
23. 控制台输出了三个数字,它们都是3的倍数。再次点击底部的显示调试区图标,隐藏控制台。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/dfa42d8990244a4e1d5b9d7f7910669d.webp?x-image-process=image/format,png)
24. 继续编写代码,尝试其它的内部函数。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/7d850333f9edfc610cabcfd6bc62fdef.webp?x-image-process=image/format,png)
25. 通过映射函数,可以对需要循环的数组进行映射,在此使数组中的元素都乘以3。点击底部的显示调试区图标,打开控制台并观察输出的结果。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/c0835d36acbb687c3e679a59b99cfb30.webp?x-image-process=image/format,png)
26. 控制台输出了四个数字,它们都被放大至三倍。再次点击底部的显示调试区图标,隐藏控制台。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/e308191509d7f88efe27b8ca7b57ddf1.webp?x-image-process=image/format,png)
27. 继续编写代码,尝试其它的内部函数。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/3e9a60a37050a12c0515bb9183a94ea8.webp?x-image-process=image/format,png)
28. 该函数可以将序列中的值进行统一处理,例如在此例中,会将初始值0,分别与数组中的每个元素进行累加,并返回最终的结果。大括号在此表示一个闭包语句。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/b2002a14548b0072a947d5e4c918e994.webp?x-image-process=image/format,png)
29. 闭包语句可以省略为一个符号,从右侧的实时反馈区可以得知,它们返回了相同的结果。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/f618e7c7f68c21053cce623cc80ddc53.webp?x-image-process=image/format,png)
30. 接着尝试将加号改为乘号,结果为0,因为初始值为0,所以它乘以任意值的结果都是0。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/7f5714ee0af72a98ea73f4a3400aa442.webp?x-image-process=image/format,png)
31. 如果将初始值0更改为1,则显示最终的结果为24。
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/9aa8781f36bd0ed20ba8a3abd23eacf9.webp?x-image-process=image/format,png)
![Swift4互动教程](https://i-blog.csdnimg.cn/blog_migrate/9c2d017bd4f36faae6e11b4bc1ab5cd5.webp?x-image-process=image/format,png)
本文整理自:《Swift4互动教程》,真正的
[手把手]教学模式,用最快的速度上手iOS开发和Swift语言,苹果商店App Store免费下载:
https://itunes.apple.com/cn/app/id1320746678
,或扫描本页底部的二维码。课程配套素材下载地址:
资料下载
![](https://i-blog.csdnimg.cn/blog_migrate/14e41f97b6d4b51f7bc11081e2a0e101.png)