zoukankan      html  css  js  c++  java
  • IOS开发中(null)与<null>的处理

    不小心在开发过程中,得到了(null)以及<null>的返回值,找了好长时间只找到了一个关于<null>的。

    由于要根据返回值进行判断,做出必要反应,因此必须知道返回值所代表的具体字符,在得到(null)后利用isEqual:和@“”,NULL,@“(null)”,nil,Nil比较后均得不到正确结果,弄得不知所措了,但是还是感觉像nil,不得已,创建一个字符串,赋值为nil,打印输出,果然是(null),想不通的是为什么不等。最后试了一下“==”,成功了。费尽周折之后才明白原来要这样用:

    if(m_result==nil)

        NSLog(@"KDA!");

    }

    还有就是<null>,从网上找到了用法:

    if([m_result isEqual:[NSNUll null]])

        NSLog(@"KDA!");

    }

    问题很简单,找不到原因解决就难了,不由感叹,基础最关键啊。

    记下,希望能帮到别人一点点就够了。

     
    案例: 请求网络数据返回的值有的为空 ,不能直接存起来 ,必须先判断一下
    这里是登陆返回的个人信息网络数据

    {

        birthday = "<null>";

        category = "<null>";

        counum = 0;

        filename = "<null>";

        level = 0;

        name = "<null>";

        password = a665a45920422f9d417e4867efdc4fb8a04a1f3fff1fa07e998e86f7f7a27ae3;

        sex = 0;

        tel = 15003876305;

        uid = 61;

    }

    这里有多个  "<null>" 怎么处理呢

      //取出用户名昵称

                    NSString *nickName=data[@"name"];

                    

                    YYCLog(@"%@",nickName);

                    这里取出来的nickName为<null>

                    //当返回的值为"<null>"用这个判断 为这个时给他赋一个值再存起来

                    if([nickName isEqual:[NSNull null]])

                    {

                        nickName=@"请设置您的昵称";

                    }

                    也可以用这个方法判断空值 和上面的一种方法一样 都可以解决这个问题

          [nickName isKindOfClass:[NSNull class]]
                   用这个方法对于空值判断比较简单点      

                     //保存用户名和密码

                    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

                    

                    [defaults setObject:username forKey:@"username"];

                    [defaults setObject:password forKey:@"password"];

                    [defaults setObject:nickName forKey:@"nickName"];

                    

                    //同时存入磁盘

                    [defaults synchronize];

          这里解决问题
     
     
  • 相关阅读:
    我们总在避免认知失调(转)
    我们搞开发的为什么会感觉到累(转)
    循环-11. 水仙花数(20)
    谷歌技术&quot;三宝&quot;之MapReduce
    oracle存储过程实例
    网络编程学习小结
    关于window.history.back()后退问题
    区间Dp 暴力枚举+动态规划 Hdu1081
    MongoDB入门简单介绍
    Windows8和MacOS10.9双系统安装及Mac经常使用软件安装--联想E49A
  • 原文地址:https://www.cnblogs.com/ithongjie/p/5115619.html
Copyright © 2011-2022 走看看