簡體   English   中英

如何在Swift中將NSString轉換為Character?

[英]How to convert NSString to Character in Swift?

我想在Swift中將NSString轉換為Character。

我從NSTextField獲得了一個字符串,在這里我輸入了一個字符(示例“ @”),我需要在Character類型中使用它。

使用角色類

var chars = [Character](str)

這應該像let characterFromString = Character(textField.text)一樣簡單。

NSString自動橋接到Swift的String ,而Character類具有一個接受單個String的init; 請參閱此處的文檔。

這要求輸入字符串包含單個音素簇(即單個字符),因此您可能需要在轉換之前驗證輸入。 上述內容的詳細程度如下:

let text = textField.text as String
if countElements(text) == 1 {
    let character = Character(text) 
    // do what you want
} else {
// bad input :-( 
}

NSTextFieldstringValue實際上返回一個Swift字符串,而不是NSString

let str = myTextField.stringValue // str is a String

你得到第一個元素

let ch = str[str.startIndex] // ch is a Character

必須先將NSString轉換為Swift字符串:

let nsString : NSString = "@"
let str = String(nsString)
let ch = str[str.startIndex]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM