Swift3.0语言教程获取字符串长度

Swift3.0语言教程获取字符串长度,当在一个字符串中存在很多的字符时,如果想要计算字符串的长度时相当麻烦的一件事情,在NSString中可以使用length属性去实现这一功能,其语法形式如下:

var length: Int { get }

【示例1-15】以下将实现字符串长度的计算。

import Foundation

var str=NSString(stringLiteral: "Swift Hello")                                                                 //计算字符串长度

print(str.length)

运行结果如下:

11

将一个NSString类型字符串获取的长度转换成类似ASCII编码的长度,如汉字2个字节,英文以及符号1个字节这个功能。由于使用length属性调用获取的长度是一个中文和一个英文都是一个字节,为了解决这一问题,NSString提供了lengthOfBytes(using:)方法,此方法可以在指定编码格式后获取字符串长度,其语法形式如下:

func lengthOfBytes(using enc: UInt) -> Int

其中,enc用来指定编码格式。

【示例1-16】以下将使用lengthOfBytes(using:)方法获取字符串的长度。

import Foundation

var str=NSString(stringLiteral: "Swift Hello")

print(str.lengthOfBytes(using: String.Encoding.utf16.rawValue))                             //计算字符串长度

运行结果如下:

22

在NSString中,还有一个获取字符串长度的方法,那就是maximumLengthOfBytes(using:)方法,此方法可以返回字符串编码时需要用到最大字节长度,其语法形式如下:

func maximumLengthOfBytes(using enc: UInt) -> Int

其中,enc用来指定编码格式。

【示例1-17】以下将使用maximumLengthOfBytes(using:)方法获取字符串的长度。

import Foundation

var str=NSString(stringLiteral: "Swift Hello")

print(str.maximumLengthOfBytes(using: String.Encoding.utf16.rawValue))                   //计算字符串长度

运行结果如下:

22

Swift3.0语言教程获取字符串长度

Swift3.0语言教程获取字符串长度相关推荐

  1. Swift3.0语言教程获取字符串编码与哈希地址

    Swift3.0语言教程获取字符串编码与哈希地址 Swift3.0语言教程获取字符串编码与哈希地址,以下将讲解字符串中其它内容的获取方法. 1.获取字符串编码 在NSString中可以使用2个属性获取 ...

  2. Swift3.0语言教程获取C字符串

    Swift3.0语言教程获取C字符串 Swift3.0语言教程获取C字符串,为了让Swift和C语言可以实现很好的交互,开发者可以使用NSString的cString(using:)方法在指定编码格式 ...

  3. Swift3.0语言教程组合字符串

    Swift3.0语言教程组合字符串 Swift3.0语言教程组合字符串,当开发者想要将已经存在的字符串进行组合,形成一个新的字符串,可以使用NSString中的两个方法,分别为appending(_: ...

  4. Swift3.0语言教程获取字符

    Swift3.0语言教程获取字符 Swift3.0语言教程获取字符,在字符串中获取某一下标位置(下标索引)处的字符是很常见的功能,在NSString中使用character(at:)方法实现,其语法形 ...

  5. Swift3.0语言教程分割字符串与截取字符串

    Swift3.0语言教程分割字符串与截取字符串 Swift3.0语言教程分割字符串 如果想要快速的创建一个数组,我们可以将字符串进行分割,分割后的内容将会生成一个数组.在NSString中有两个分割字 ...

  6. Swift3.0语言教程使用字符串创建和初始化字符串

    Swift3.0语言教程使用字符串创建和初始化字符串 Swift3.0语言教程使用字符串创建和初始化字符串,在编程语言中,字面值是很常见的数据描述形式.人们可以通过字面所表达的意思,获知其含义,尤其是 ...

  7. Swift3.0语言教程比较、判断字符串

    Swift3.0语言教程比较.判断字符串 Swift3.0语言教程比较.判断字符串,在一个程序中字符串很多时,常常会做的操作就是对这些字符串进行比较和判断.本小节将讲解这些内容. 1.不区分大小写比较 ...

  8. Swift3.0语言教程字符串大小写转化

    Swift3.0语言教程字符串大小写转化 Swift3.0语言教程字符串大小写转化,在字符串中,字符串的格式是很重要的,例如首字母大写,全部大写以及全部小写等.当字符串中字符很多时,通过人为一个一个的 ...

  9. Swift3.0语言教程删除字符与处理字符编码

    Swift3.0语言教程删除字符与处理字符编码 Swift3.0语言教程删除字符 Swift3.0语言教程删除字符与处理字符编码,在字符串中,如果开发者有不需要使用的字符,就可以将这些字符删除.在NS ...

最新文章

  1. HDOJ 1060 Leftmost Digit
  2. AEM:众里寻他千百度,用了SIP不迷路-识别污水处理单元中砷氧化细菌的多样性及代谢潜力...
  3. 天津发票版本文件服务器端口,天津市增值税发票综合服务平台网址
  4. 如何根据原理图画封装_如何根据业务封装自己的功能组件
  5. 第六天2017/04/11(1:结构体链表基础和相关经典操作)
  6. Django13-ModelForm中的is_valid及局部钩子、全局钩子源码解析
  7. Python3 调用 Node.js 解析 MathJax 公式
  8. 【转】子窗体刷新父窗体使用接口模式 父窗口关闭子窗口
  9. 0034-CM启动报InnoDB engine not found分析
  10. linux平台使用doxygen生成项目文档
  11. Linux平台Libyuv使用指南
  12. 数控编程加工中心注意事项有哪些,你知道吗
  13. 【经验总结】CS与MSF之间的会话传递
  14. javascript学习网站
  15. 微信语音(录音,上传,下载,播放,停止)
  16. Android 传感器介绍
  17. Monodb日期存储差8小时分析与解决,同时引出时间分析
  18. 中高管职业生涯的挑战与机遇:如何在“中年危机”中突围?
  19. 数据结构和算法——用动态规划求解最短路径问题
  20. Android Camera模块(一)

热门文章

  1. 创业公司如何巧用工具提高团队生产力——豌豆荚创始人王俊煜讲述团队背后的“利器”...
  2. TestNG如何用命令行运行
  3. 游戏中反向运动学(ik)的研究与简介
  4. 妙招避免网络IP地址被非法修改
  5. ELK菜鸟手记 (三) - X-Pack权限控制之给Kibana加上登录控制以及index_not_found_exception问题解决
  6. 微信token验证失败的解决方法
  7. 如何使用命令行中的“message”和“description”进行更改? [重复]
  8. Amazon SNS和Amazon SQS有什么区别?
  9. 什么时候应该在C ++中使用类与结构?
  10. 如何判断java对象是否为String数组