使用带有unichar和String的二元运算符

时间:2015-06-06 12:50:26

标签: ios swift binary-operators unichar

我试图使用二元运算符来比较两个值:

character = (xxx as NSString).characterAtIndex(2)
if character == "1" {
    //do this thingy   
}

现在我收到失败消息二进制运算符'=='不能应用于unichar或String类型的操作数。 我还尝试转换角色:

if String(character) == "1" 

不起作用......

2 个答案:

答案 0 :(得分:8)

由于unichar是一个别名为16位整数的类型,因此需要在UnicodeScalar函数中“包装”它以进行比较:

if UnicodeScalar(character) == "1" {
    //do this thingy   
}

答案 1 :(得分:1)

这是另一种方法。从character

更改String的获取方式
let xxx = "321"
let character = xxx[advance(xxx.startIndex, 2)]
if (character == "1") {
    println("it is a 1")
}

输出:

  

“这是1”