OStack程序员社区-中国程序员成长平台

标题: ios - UItextfield 用空字符串初始化?不为空?也没有? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 01:32
标题: ios - UItextfield 用空字符串初始化?不为空?也没有?

我有一个 uitextfield,当它被初始化并且我没有输入任何值时,我发现 uitextfield 的值不是 null 也不是 nil。

 NSString *notes = (notesField.text)?(notesField.text)"hello";
    NSLog(@"notes: %@",notes);

它不返回任何注释

    NSString *notes1;

//or use legnth

    if ([notesField.text isEqual""]) {
     notes1=@"hello";
        NSLog(@"empty textfield: %@",notes1);
        //then it returns "hello"
    }
    else
    {
        notes1=notesField.text;
        NSLog(@"not empty textfield: %@",notes1);
    }

这是为什么呢?我还可以使用三元运算符吗? 像这样?

NSString *notes = ([notesField.text length])?(notesField.text)"hello";



Best Answer-推荐答案


你可以使用

NSString *notes = ([notesField.text length])?(notesField.text)"hello";

NSString *notes = ([notesField.text length]==0)?@"hello"notesField.text);

NSString *notes = ([notesField.text isEqualToString""])?@"hello"notesField.text);

如果你的 UITextField 没有条目(初始情况),使用第二个或第三个选项会更好。 NSString *notes = ([notesField.text length])?@"hello"notesField.text); 无法正常工作,因为 notesField.text即使文本字段中没有文本,也将是 TRUE。所以你应该使用 notesField.text.length[notesField.text isEqualToString""]

希望现在清楚。

关于ios - UItextfield 用空字符串初始化?不为空?也没有?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15385319/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4