Java 如何序列化浮点数组的ArrayList
我有一个ArrayList,每个对象由两个表示坐标的浮点数组成的数组组成。我发现可以通过调用ArrayList上的.toString()方法来序列化ArrayList,但这并没有序列化ArrayList中的浮点数组。我怎样才能把它们序列化呢 我基本上是这样做的:Java 如何序列化浮点数组的ArrayList,java,android,serialization,Java,Android,Serialization,我有一个ArrayList,每个对象由两个表示坐标的浮点数组成的数组组成。我发现可以通过调用ArrayList上的.toString()方法来序列化ArrayList,但这并没有序列化ArrayList中的浮点数组。我怎样才能把它们序列化呢 我基本上是这样做的: private ArrayList<float[]> pointsList = new ArrayList<float[]>(); 然后我序列化ArrayList,如下所示: pointsList.toStri
private ArrayList<float[]> pointsList = new ArrayList<float[]>();
然后我序列化ArrayList,如下所示:
pointsList.toString()
但是列表中的每一项都变成了F@426d51d8和其他类似的字符串。如何序列化这些子数组并保留其数值?我在StackOverflow和其他地方搜索过论坛,但其他类似的问题涉及如何创建字符串数组或其他数组列表的ArrayList。试试这个
Arrays.deepToString(pointsList.toArray());
ArrayList的toString()方法正在调用列表元素的toString()方法。
float[]没有self-toString()方法,因此使用对象类中的toString()方法。这就是为什么F@426d51d8是印刷的
要将数组序列化为字符串,您应该使用Arrays.toString(a)方法。您可能想将json用于此内容。@arjun.9990请原谅我对java非常陌生,但我认为序列化是将数组转换为json字符串的过程。至少在PHP和javascript中是这样的。你会推荐什么呢?如果你想通过互联网跨系统传输数据,json会更好。随着android被用于为许多网站创建前端,它变得越来越流行。android支持它您可能想阅读:
Arrays.deepToString(pointsList.toArray());