Swift3.0語言教程獲取字串長度

大學霸發表於2016-10-27

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語言教程獲取字串長度

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29597077/viewspace-2127190/,如需轉載,請註明出處,否則將追究法律責任。

相關文章