objective-c – 在将它与另一个比较之前,是否需要为一个变量分配一个字符串?

我想比较一个NSString的值到字符串“错误”。这里是我的代码:

NSString *wrongTxt = [[NSString alloc] initWithFormat:@"Wrong"];
if( [statusString isEqualToString:wrongTxt] ){
     doSomething;
}

我真的必须创建一个NSString为“错误”?

此外,我可以将UILabel的文本的值与字符串进行比较,而不将标签值分配给字符串?

Do I really have to create an NSString for “Wrong”?

不,为什么不只是做:

if([statusString isEqualToString:@"Wrong"]){
    //doSomething;
}

使用@“”只是创建一个字符串文字,这是一个有效的NSString。

Also, can I compare the value of a UILabel.text to a string without assigning the label value to a string?

是的,您可以执行以下操作:

UILabel *label = ...;
if([someString isEqualToString:label.text]) {
    // Do stuff here 
}
http://stackoverflow.com/questions/1302985/is-it-necessary-to-assign-a-string-to-a-variable-before-comparing-it-to-another

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:objective-c – 在将它与另一个比较之前,是否需要为一个变量分配一个字符串?