美文网首页iOS开发中的神兵利器
5.6 EZSwiftExtensions对整形/字符串/数组/

5.6 EZSwiftExtensions对整形/字符串/数组/

作者: 互动教程网 | 来源:发表于2018-04-11 21:54 被阅读7次

    1. 本节课将为您演示对整型、字符串、数组、字典和日期等类型的强大扩展。首先在左侧的项目导航区,打开视图控制器的代码文件。

    image

    2. 现在开始编写代码,实现对基本类型的扩展。

    image

    3. 首先在当前的类文件中,引入已经安装的第三方类库。

    image

    4. 接着添加一个方法,通过扩展方法获得设备的各种属性信息。

    image

    5. 依次获取应用程序的版本号、编译号等信息,并在控制台输出这些数据。

    image

    6. 检测设备是否处于竖立状态。

    image

    7. 检测设备是否处于横放状态。

    image

    8. 在控制台依次输出屏幕的宽度和高度信息。

    image

    9. 接着输出状态栏的高度,以及屏幕不包含状态栏的高度。

    image

    10. 第三方库还提供了一个快速下载网络图片的方法。

    image

    11. 网络图片下载完成之后,跳转到主线程,并显示下载后的图片。

    image

    12. 创建一个图像视图,用来显示下载的网络图片,并将图像视图添加到根视图。

    image

    13. 第三方类库对多线程提供了很好的支持,使开发者可以很方便地创建一个新的线程。

    image

    14. 通过获取JSON的方法,可以访问服务器的接口,并处理从服务器返回的数据。

    image

    15. 处理访问服务器接口失败的情况。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

    image

    16. 然后在视图加载完成的方法中,调用您刚刚创建的自定义方法。

    image

    17. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。

    image

    18. 当模拟器启动之后,在屏幕上显示了从网络下载的图片。并在控制台显示了由自定义方法输出的日志信息。点击此处的[停止]按钮,关闭模拟器。

    image

    19. 接着点击右侧的垂直滚动条,跳转到编辑区的底部位置。

    image

    20. 现在开始添加另一个方法。

    image

    21. 该方法用来演示对视图控制器,和其它基本类型的扩展。

    image

    22. 初始化一个视图控制器对象。

    image

    23. 在控制台输出视图控制器对象的类名。

    image

    24. 同样可以获得类的名称字符串,并在控制台输出。

    image

    25. 初始化一个布尔变量,然后通过布尔类型的扩展方法,反转布尔变量的值。

    image

    26. 接着初始化一个整型常量。

    image

    27. 通过整形的扩展属性,可以检测整形数据是否为偶数或奇数。

    image

    28. 接着判断该数字是正数还是负数。

    image

    29. 获得并输出某个整数的数字个数。

    image

    30. 通过数字类型的范围属性,可以快速创建一个循环。

    image

    31. 初始化一个无标识符的整数,然后将其转换成一个整数。

    image

    32. 类型的转换变得更加方便,这里依次将整数转换成双精度、浮点类型、字符串和无符号整型。

    image

    33. 修改此处的方法名称。

    image

    34. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。

    image

    35. 模拟器启动之后,观察在底部的控制台所输出的日志信息。点击此处的[停止]按钮,关闭模拟器。

    image

    36. 点击右侧的垂直滚动条,跳转到编辑区的底部位置。

    image

    37. 接着添加另一个方法。

    image

    38. 我们将在这个方法中,演示和字符串相关的扩展方法。

    image

    39. 初始化一个内容为数字的字符串。

    image

    40. 接着将字符串转换成双精度的类型和整型数字,并在控制台输出结果。

    image

    41. 删除字符串中的空格和换行符,并在控制台输出。

    image

    42. 初始化另一个字符串常量。

    image

    43. 输出在字符串中的指定位数的字符。

    image

    44. 输出在字符串中的指定范围的字符。

    image

    45. 获得某个字符串在另一个字符串中的位置。

    image

    46. 初始化另一个字符串常量。

    image

    47. 获得并输出字符串的长度。

    image

    48. 获得并输出首字母大写后的字符串。

    image

    49. 初始化另一个字符串常量。

    image

    50. 接着依次检测,在字符串中是否包含三个字符串。

    image

    51. 可以通过设置相关的选项,对是否包含字符串进行检测。这里设置在检测字符时,考虑大小写的不同。

    image

    52. 接着创建两个字符串常量。

    image

    53. 然后检测字符串是否为空。

    image

    54. 初始化另外两个字符串常量。

    image

    55. 接着检测字符串是否为邮箱格式。

    image

    56. 初始化另一个字符串常量。

    image

    57. 通过抽取网址列表方法,可以抽取字符串中的所有网址。

    image

    58. 初始化另一个字符串常量。

    image

    59. 然后通过扩展方法,将字符串转换成整型、双精度和浮点类型的数字。

    image

    60. 接着创建两个字符串常量。

    image

    61. 然后通过类型转换方法,将字符串转换成布尔类型。

    image

    62. 初始化两个字符串常量。

    image

    63. 判断字符串是否完全由数字组成。

    image

    64. 初始化一个较长的字符串。

    image

    65. 然后通过计数方法,统计在字符串中,总共包含了多少个指定的字符串。点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

    image

    66. 接着修改此处的方法名称。

    image

    67. 然后点击左上角的[编译并运行]按钮,启动模拟器预览项目。

    image

    68. 模拟器启动之后,观察在底部的控制台,所输出的日志信息。点击此处的[停止]按钮,关闭模拟器。

    image

    69. 点击右侧的垂直滚动条,跳转到编辑区的底部位置。

    image

    70. 接着添加另一个方法。

    image

    71. 我们将在这个方法中,演示和可变字符串相关的扩展方法。

    image

    72. 初始化一个可变字符串常量。

    image

    73. 可变字符串拥有多个扩展方法,这里依次给字符串添加下划线、加粗、斜体,并设置颜色为橙色。同时设置进行自定义样式的字符范围。

    image

    74. 给可变字符串添加中心线,同时设置进行自定义样式的字符范围。

    image

    75. 接着将两个可变字符串进行拼接。

    image

    76. 初始化一个标签对象,并设置标签的显示区域。

    image

    77. 设置标签对象可以显示多行文字。

    image

    78. 将可变字符串赋予标签对象,然后再将标签对象,添加到根视图。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

    image

    79. 修改此处的方法名称。

    image

    80. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。

    image

    81. 在弹出的模拟器中,显示了一个拥有多个自定义字符样式的标签对象。点击此处的[停止]按钮,关闭模拟器。

    image

    82. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。

    image

    83. 接着添加另一个方法。

    image

    84. 我们将在这个方法中,演示和数组相关的扩展方法。

    image

    85. 初始化一个数组对象,然后随机获得数组中的一个元素。

    image

    86. 初始化另一个数组对象,然后获得某个元素在数组中的索引位置。

    image

    87. 初始化第三个数组对象,假如某个数组拥有多个相同的元素,通过该方法,可以获得最后一个对象所在的索引位置。

    image

    88. 接着初始化第四个数组,然后删除数组中的指定元素。

    image

    89. 初始化一个数组,接着判断是否包含某个实例。

    image

    90. 初始化另一个数组,接着判断是否包含另一个数组中的所有元素。

    image

    91. 判断某个数组,是否包含另一个数组中的元素。

    image

    92. 初始化另一个数组,该数组包含字符串和整数两种类型的元素。

    image

    93. 使用费希尔-耶茨-德斯特弗莱德算法,更改数组中的各位元素的位置。

    image

    94. 初始化另一个数组。

    image

    95. 然后将一个新的元素,插入到数组中的首位。

    image

    96. 继续初始化另一个数组常量。

    image

    97. 在控制台输出两个数组同时拥有的元素,以及两个数组所有元素的合集。

    image

    98. 初始化一个数组常量。

    image

    99. 然后获取在两个数组之中,互不拥有的元素。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

    image

    100. 修改此处的方法名称。

    image

    101. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。

    image

    102. 模拟器启动之后,观察在底部的控制台,所输出的日志信息。点击此处的[停止]按钮,关闭模拟器。

    image

    103. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。

    image

    104. 接着添加另一个方法。

    image

    105. 我们将在这个方法中,演示和字典相关的扩展方法。

    image

    106. 初始化一个字典对象。

    image

    107. 然后通过字典对象的拥有方法,检测在字典中,是否包含指定的键。

    image

    108. 初始化另一个字典对象,然后通过字典对象的随机方法,将字典中的键值随机分布。

    image

    109. 接着初始化另外两个字典对象。

    image

    110. 可以通过字典对象的连接方法,将两个字典对象拼接。

    image

    111. 再次初始化另外两个字典对象。

    image

    112. 通过字典对象的相交方法,可以获得两个字典对象相同的键值。

    image

    113. 通过字典对象的联合方法,可以将两个字典对象联接在一起。

    image

    114. 接着在控制台输出联合字典对象,以及两个字典对象相异的键值。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

    image

    115. 修改此处的方法名称。

    image

    116. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。

    image

    117. 模拟器启动之后,观察在底部的控制台,所输出的日志信息。点击此处的[停止]按钮,关闭模拟器。

    image

    118. 然后点击右侧的垂直滚动条,跳转到编辑区的底部位置。

    image

    119. 接着添加另一个方法。

    image

    120. 我们将在这个方法中,演示和日期相关的扩展方法。

    image

    121. 初始化两个字符串对象,分别表示日期的格式和日期的值。

    image

    122. 接着在控制台输出格式化后的日期。

    image

    123. 初始化一个日期对象。

    image

    124. 然后输出日期对象转换成字符串后的内容。

    image

    125. 通过设置日期和时间的格式,可以将日期对象转换成指定格式的日期和时间。日期格式共有无、短、中、长、全等五种。

    image

    126. 使用字符串设置日期和时间的格式,然后将日期转换成指定格式的内容。

    image

    127. 初始化另外两个日期对象。

    image

    128. 然后依次计算两个日期之间相差的天数、小时数、分钟数和秒数。

    image

    129. 初始化另一个日期对象,然后计算该日期距离当前时间已经走过的长度。

    image

    130. 使用相同的方式,初始化另一个日期,并计算时间的流逝。

    image

    131. 最后计算第三个日期的时间流逝。

    image

    132. 初始化两个日期对象。

    image

    133. 使用常见的数学符号,可以快速比较两个日期的大小。

    image

    134. 另外通过时间类,可以创建延迟动作,在此创建一个延迟两秒,然后在主线程执行的动作。

    image

    135. 创建一个延迟两秒,然后在子线程执行的动作。接着点击右侧的垂直滚动条,跳转到编辑区的顶部位置。

    image

    136. 修改此处的方法名称。

    image

    137. 接着点击左上角的[编译并运行]按钮,启动模拟器预览项目。

    image

    138. 模拟器启动后,在控制台输出了相应的日志信息,并在两秒钟之后输出延迟的信息。最后点击此处的[停止]按钮,关闭模拟器,并结束本节课程。

    image

    本文整理自:《app开发中的神兵利器》,真正的[手把手]教学模式,用最快的速度上手iOS开发,苹果商店App Store免费下载:https://itunes.apple.com/cn/app/id1209739676,或扫描本页底部的二维码。课程配套素材下载地址:资料下载

    apps8 2.png

    相关文章

      网友评论

        本文标题:5.6 EZSwiftExtensions对整形/字符串/数组/

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