作者inzaghi0507 (KaKa)
看板MacDev
标题[问题] 关於array插入null值
时间Sun Aug 22 20:47:39 2010
目前在写程式的时候遇到了一些困难
现在想要把手机电话簿里的值分类取出来存成array
举例来说就是姓氏、电话等等取出成NSString之後
再分别存进nameArray、PhoneArray这样
取值部分没有问题
但问题发生在有时候某些栏位取出来是没有值的
在使用 [某某array addObject:某某string];
会有Error
希望能够吧nil的值也存进Array里
(而不是被下一个取出的值给写入)
搜寻了一下有提到NSNULL这个东西
但是试过了还是有问题(应该是我用错了吧XD)
请问各位高手有相关经验吗?
或是有其他更smart的方法?
谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.115.87.53
1F:→ zonble:就是用 NSNull 啊 08/22 21:11
2F:→ zonble:把 [NSNull null] 放进去就好 08/22 21:12
3F:→ inzaghi0507:是说这样吗? [某某array addObject:[NSNull null]]; ? 08/22 21:19
4F:→ zonble:是啊 08/22 21:25
5F:→ zonble:建议稍微花点时间了解 NULL、nil、Nil 与 NSNull 差别 08/22 21:27
6F:推 aecho:NULL, nil, Nil是不一样的东西吗?? 08/22 21:32
7F:→ zonble:不一样 08/22 21:38
8F:→ zonble:NULL 就是 0,nil 虽然是 0,但是可以对 nil 送 08/22 21:39
9F:→ zonble:objc message。Nil 是空的 class 08/22 21:39
10F:→ inzaghi0507:Z大我尝试过之後console反而出现了 08/22 21:39
11F:→ inzaghi0507:[NSNull isEqualToString:]: unrecognized selector 08/22 21:40
12F:→ inzaghi0507:sent to instance 0x2737d68 08/22 21:40
13F:→ inzaghi0507:他说是'NSInvalidArgumentException' 08/22 21:41
14F:→ zonble:因为你对 NSNull 传了NSString 的 method 08/22 21:41
15F:→ zonble:如果你知道 array 里头有 NSNull 08/22 21:42
16F:→ zonble:就用 isKindOfClass: 判断一下哪种物件可以做什麽事 08/22 21:42
17F:→ zonble:例如发现是 [NSNull class] 就 return 了 08/22 21:42
18F:推 Maiyo:呃...要是我就不会用NSNull 直接存入@""就好 @@ 08/22 22:56
19F:推 leondemon:zonble在外面有没有开课呀? 我好想上~ 08/22 23:25
20F:→ inzaghi0507:我也想上课 自学好累喔 08/22 23:41
21F:→ zonble:放个 NSNull 与放 @"" 还是有差别,因为你有时候会想要判断 08/23 00:12
22F:→ zonble:到底是真的没资料,还是的确就是个长度为 0 的字串 08/23 00:13
23F:→ zonble:另外,Cocoa framework 还有另外一个代表没东西的玩意 08/23 00:13
24F:→ zonble:叫做 WebUndefined,不过这个通常不太会用到 08/23 00:14
25F:→ zonble:WebUndefined 的用途是,在 webkit 中,每个网页上的 js 08/23 00:14
26F:→ zonble:物件,其实都可以翻译成对应的 objc 物件,而如果是没有 08/23 00:14
27F:→ zonble:定义的 js 物件,就会变成 WebUndefined。 08/23 00:15
28F:推 offname:比较是不是[NSNull null],直接用 == 比。就可以了 08/23 09:28
29F:→ inzaghi0507:是指可以利用(A==[NSNull null])或(A!=[NSNull null]) 08/23 09:57
30F:→ inzaghi0507:来判断A是不是没有资料罗? 08/23 09:57
31F:推 offname:判断是不是[NSNull null]。[NSNull null] 是唯一的。 08/23 12:48
32F:推 mymaydayya:同楼上 先判断是否为[NSNull null] 不是再用isEqual... 08/23 16:42