我有两个值 null 的字符串。但是当我比较字符串时,我遇到了一些问题:
if([textField.text isEqualToString:str])
{
//Some code
}
两者都是 null 但是如果条件,控件不会进入
请帮忙。
谢谢,
石
答案 0 :(得分:0)
isEqualToString
适用于NSString
,指针(textField.text
和str
)为null,不指向对象。允许将消息发送到nil并返回nil。
在第一次检查指针指向有效对象的情况下,在它们的NSString
个对象中。
也许:
if((textField.text==nil && str==nil) || [textField.text isEqualToString:str])
{
//Some code
}
答案 1 :(得分:0)
我不确定你想做什么,
但如果你想在textField为空时做某事,你可以写
if([textField.text isEqualToString:@""])
{
//Some code
}
答案 2 :(得分:0)
此:
NSString *s1 = nil;
NSString *s2 = nil;
// you can compare two nils
if (s1 == s2)
{
NSLog(@"==");
}
// s1 is nil so you shouldn't send a message to it
if ([s1 isEqualToString:s2])
{
NSLog(@"isEqualToString");
}
输出:
2011-12-19 07:33:54.651 Craplet[2845:707] ==
答案 3 :(得分:0)
目前尚不清楚你想做什么。我假设您要检查文本字段是否为空。
当文本字段为空时,可能会分配两个值中的一个。他们可能是@""或者没有。 所以你必须检查两个
if ([@"" isEqualToString: textField.text] || !textField.text) {
NSLog(@"Text Field is empty");
}