Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将JSON字符串转换为Java对象或HashMap_Java_Android_Json - Fatal编程技术网

将JSON字符串转换为Java对象或HashMap

将JSON字符串转换为Java对象或HashMap,java,android,json,Java,Android,Json,我正在写一个android应用程序。我想在意图/活动之间传递一些数据,我觉得在这一点上,从JSON到JSON的转换可能是一种更好的方式。我能够使用JSONObject支持成功地将java hashmap转换为json字符串 但是,我需要将这个JSON字符串转换回java对象或hashmap。最好的办法是什么 包裹真的是值得做的改变;如果我有简单的5场对象?在意图之间传输数据的其他方式有哪些 干杯我建议你选择。它对泛型和完整的Javabeans有极好的支持,并且真正简化了转换任务。在中,您可以找到

我正在写一个android应用程序。我想在意图/活动之间传递一些数据,我觉得在这一点上,从JSON到JSON的转换可能是一种更好的方式。我能够使用JSONObject支持成功地将java hashmap转换为json字符串

但是,我需要将这个JSON字符串转换回java对象或hashmap。最好的办法是什么

包裹真的是值得做的改变;如果我有简单的5场对象?在意图之间传输数据的其他方式有哪些

干杯

我建议你选择。它对泛型和完整的Javabeans有极好的支持,并且真正简化了转换任务。在中,您可以找到一个将
映射
转换为JSON的示例,反之亦然;在另一个示例中,您可以找到将JSON字符串转换为完整的Javabean的示例(使用
gson.toJson(bean)
,从Javabean转换为JSON非常简单)


其他传输数据的方法是XML和序列化,两者的开销都比JSON大得多。

你可以通过
可序列化的
s来传递
Intent
s,不需要JSON。

为什么不使用
Bundle
作为你的
映射呢?它可以很容易地放在
Intent
中,基本上是一种美化的类型安全
>HashMap


如果您仍然需要使用JSON,我建议您使用。转换Java对象(包括
Maps
)时,JSON既简单又快速(比GSON更快)

如果您有数字数据,JSON是一个特别糟糕的选择……它会破坏任何不能表示为双精度的东西(甚至一些双精度值)。除非必须与JavaScript通信,否则应避免使用JSON。

这是不正确的。JSON具有泛型数字类型,但可以包含纯整数,这取决于库是否以浮点形式公开。最具体地说,大多数Java JSON库都能干净高效地处理这些。也许您有在一些库方面有过不好的经验?这根本不是真的。随机示例:json.org实现按照我所描述的方式被破坏了。您可能不希望有一个“固定”的json库,因为这样它将与JavaScript本身不兼容。