如何在Objective-C中将NSString解析为BOOL?

Fir*_*ist 52 cocoa boolean objective-c nsstring

我正在使用Objective-C for iOS进行编程.我想将NSString类型的对象解析为BOOL类型的标量.

我有一个值,我知道它将是@"YES"或@"NO",但是YES(或)NO值是NSString,我只想将NSString更改为BOOL.

我怎样才能做到这一点?

如果你知道,请回答我.

谢谢阅读.

bsc*_*ltz 149

我想是这样的:

BOOL boolValue = [myString boolValue];
Run Code Online (Sandbox Code Playgroud)

  • @Abdul Yasin,它将是0/false.只有在知道字符串中有布尔值时,此方法才有效; 例如@"1",@"true",@"YES"等.除此之外,boolValue将始终返回0; (3认同)

Tom*_*mmy 22

你可能应该使用NSString's -boolValue.直接引用文档:

[返回t]接收者文本的布尔值.遇到"Y","y","T","t"或数字1-9之一时返回YES - 该方法忽略任何尾随字符.如果接收方没有以数字的有效十进制文本表示开头,则返回NO.

这似乎与您的输入案例相符.