【问题标题】:If UITextField or NSString is empty如果 UITextField 或 NSString 为空
【发布时间】:2010-08-01 16:26:57
【问题描述】:

如果我想检查UITextFieldNSString是否为空,我可以将其与NULLnil进行比较吗?

【问题讨论】:

    标签: iphone objective-c cocoa-touch uitextfield


    【解决方案1】:

    您建议的方法都不是万无一失的。最好的测试是:

    if ([myTextField.text length] > 0) ...
    

      if ([myString length] > 0) ...
    

    【讨论】:

    • 我测试并发现比较字符串长度要好得多。感谢您的帮助
    【解决方案2】:

    如果我想检查文本字段或字符串是否为空,我将其与 NULL 或 nil 进行比较?

    没有。

    空字符串对象(不包含字符的字符串对象)或包含空字符串对象的文本字段对象与nil 不同,后者根本不是对象。您需要询问(文本字段的)字符串how long it is,或者询问whether it is equal to 一个您手头上的空字符串(@"")。

    NULL,虽然也是一个空指针,但应该用于通用指针,而不是指向 Objective-C 实例的指针(您有更具体的nil)或类(您有更具体的@ 987654327@).

    【讨论】:

      【解决方案3】:

      我遇到了类似的问题,但除此之外没有其他方法对我有用:

      NSString *string = textfield.text;
      if ([string isEqualToString:@""]) {
          ....
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-03-27
        • 2011-06-07
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多