问题标签 [nsnull]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - 如何检查 NSArray 中的对象是否为 NSNull?
我得到一个空值的数组。请检查下面我的数组的结构:
当我尝试访问索引 0 时,它会因为以下原因而崩溃
目前由于该数组带有崩溃日志而崩溃:
ios - 在 ios5 中有效地添加具有空值的 NSDictionary 键
我正在尝试在我的字典中添加一些带有键的值,以将请求发布到服务器。我在 ios7 上没有问题,但在 ios5 中创建字典时遇到问题,当输入空值时,它不会插入该键或此后在字典中。这是我的代码示例
在 ios 7 中记录结果:
ios5中的相同日志结果:
我希望 ios5 的日志与 ios7 的日志相同。我做了一些搜索,我知道我可以事先比较该值以检查它是否为空,然后用空字符串添加到字典中。但这会很乏味。我想知道是否还有其他简单的解决方法。有没有更好的解决方案?
这是我目前的解决方案
objective-c - nil 和 (NSString *)[NSNull null] 在检查空 NSString 对象时是否等效
我有一个NSString
对象,
那么以下两个版本是否等效?
版本 1:
版本 2:
参考帖子
更新 - 测试结果
我的简单测试结果表明,以上两个版本有不同的行为:
何时
aString
初始化,然后分配nil
:false
对于版本 1 中的表达式,true
用于版本 2 中的表达式。何时
aString
使用 的值进行初始化@""
。false
对于版本 1 中的表达式,false
用于版本 2 中的表达式。
所以很明显,这两个版本的行为并不相同。
测试代码:
控制台输出:
更新 - 我是什么意思“空字符串”**
现在我已经更清楚地表明,一个NSString
对象是不同的nil
,它是一个有效的初始化实例,它持有一个空字符串值@""
。在这篇文章中我真正需要的是如何测试我的NSString
对象是否成功初始化,即 if aString
is nil
。我想知道上面两个版本的测试代码有没有区别。
ios - NSNumber numberWithInt 作为对象添加到 NSDictionary 时导致 NSNull
这可能是一个相当基本的问题,但尽我所能,我找不到导致它的原因。
我写了以下代码:
问题在何时objectsForValue
为空时表现出来,这不会一直发生,而是经常发生。如果我没记错的话,这在逻辑上是不可能的,除非[NSNumber numberWithInt:someValue]
在添加为 Object 时被解释为 NSNull myDictionary
,而在将相同的表达式添加到 NSArray 时,它会被视为对象values
。
并且记录myDictionary
我注意到这确实是正在发生的事情。谁能向我解释为什么?
ios - NSMutableArray 删除空值
从我的 JSON 提要中,我创建了一个NSMutableArray
来保存我的NDDictionary
对象。当我在 a 中显示它时,UITableView
它会因为<null>
Values 而崩溃。所以我需要知道,我如何才能"<null>"
从我的数组中删除这些对象。
这是从 JSON 返回的内容的打印输出:
我尝试过诸如:
和
到目前为止所有这些都失败了,所以任何人都可以告诉我一个"<null>"
从这个数组中删除对象的简单方法,因为它让我发疯!
objective-c - 浏览对象的字段
在Objective C 中,我有一个对象,例如有Person
很多字段firstName
、、、、lastName
...等等。这些字段类型是并且其中任何一个都可以是。phoneNumber
address
city
NSString
nil
现在我想将我的字段值连接到另一个NSString
:
问题是,只要其中一个字段是nil
. 我有一个例外:
我怎样才能简单地处理循环中的nil
值的情况?for
ios - 导航控制器内的 UIWebView 在键入时崩溃
我花了几个小时寻找这个问题的解决方案,但我什至找不到任何经历过它的人,更不用说解决方案了。
在我的项目中,我有一个主视图控制器,它推送包含 UIWebView 的第二个视图控制器。两个视图控制器都嵌入在导航控制器中。push segue 和 WebView 都使用 IB 连接起来。
转场按预期发生,网页加载并正常工作,直到我尝试输入。点击文本字段会调出键盘,但第一次按键会使应用程序崩溃并出现错误:
这发生在模拟器和设备上。我特别困惑,因为我没有做任何复杂的事情。在包含 WebView 的视图控制器中,我有以下 viewDidLoad:
并且没有其他代码。Google 在这里被用作示例站点,但它发生在我尝试过的每个站点上。奇怪的是,如果我删除 segue 并在没有父导航控制器的情况下呈现 Web 视图,一切正常,所以看起来导航控制器与它有关。正如我所说,webView 属性被连接为一个 IB 插座。我也尝试过以编程方式添加它,但结果是一样的。据我所知,我的第一个视图控制器中的任何内容都不应该对此产生任何影响;就像我说的那样,这是一个按钮的故事板segue。我可以确定向 NSNull 发送长度不是我自己直接做的任何事情,因为我没有在代码中的任何地方使用长度选择器。
任何帮助将不胜感激。
已请求它,因此完整的错误消息如下:
ios - 将 NSNull 对象分配给 NSString
我正在编写一个 iOS 应用程序,我需要通过 Azure 的移动服务从 SQL 数据库获取数据。
下载数据后,我NSDictionary
从 SQL 表中获得了所有属性。如果属性为空,则值为NSNull
。
有没有办法在没有 IF 语句的情况下传递NSNull
(NSString
我不想有 20 个 if 语句..)?
ios - UITableView NSInvalidArgumentException 中的奇怪错误原因:[NSNull 长度],当它不为空时
我有暗恋问题。这是我在网上找不到解决方案的第一件事。如果您之前遇到过同样的问题,请提供帮助。谢谢。
错误信息:
*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“-[NSNull 长度]:无法识别的选择器发送到实例 0x3a072a70”
这是我的代码:
奇怪的是;当我注释掉以下行或当我的数组“variant.Categories”为空时,它工作得很好。(我什至可以从其他函数填充表格视图)但是它并没有在这些行中被粉碎。我可以在调试时看到对象。它不是空的。一切看起来都很正常。
“variantCategories”数组在我的 UITableViewController 类中是这样定义的,这是我传递给这个视图控制器的唯一变量。
我试图让它“强大”而不是“保留”,但它没有奏效。
任何形式的帮助都非常感谢。
谢谢。
ios - 在 NSDictionary 中检测 Null 值
我有一个NSDictionary
从 API 服务器的 JSON 响应填充的。有时,此字典中键的值是Null
我正在尝试获取给定的值并将其放入表格单元格的详细文本中以进行显示。
问题是,当我尝试将值强制转换为时,NSString
我会崩溃,我认为这是因为我试图强制Null
转换为字符串。
这样做的正确方法是什么?
我想做的是这样的:
这是字典的一个例子:
如果我只需要将所有这些包装在一个条件中,那很好。我只是无法弄清楚那个条件是什么。回到我会比较的 Objective-C 世界,[NSNull null]
但这似乎不适用于 Swift。