是有什么区别getString()
和optString()
在JSON?
Answer 1:
作为迭戈提到,这是一个好主意,检查文件 (此链接是已经过时的-好东西,我们有Wayback机器! )在这里发布提问之前,但现在您有:
不同的是, optString
返回空字符串( ""
),如果您指定的键不存在。 getString
,另一方面抛出一个JSONException
。 使用getString
如果它的数据会丢失,或错误optString
,如果你不知道它会在那里。
编辑:从文档的详细信息:
获取与数字键关联的可选字符串。 如果没有这样的键,它返回一个空字符串。 如果该值不是字符串和不为空,则它被转换为一个字符串。
Answer 2:
如果你想避免NullPointerException
你更好地利用optString()
如果您取出由数据JSON
在任何时候,你可能有null
数据特定键值,在那个时候,而不是实现零的条件下,更好地利用这个优化方法的optString("<keyname>")
Answer 3:
公共java.lang.String中optString(INT指数)获取与指数相关的可选字符串值。 如果该索引位置没有值,则返回一个空字符串。 如果该值不是一个字符串,不为空,则coverted为字符串。 参数:index - 索引必须为0和长度()之间 - 1。返回:一个字符串值。
文章来源: The difference between getString() and optString() in Json