具有不同数据类型的“全局”数组 - Android

时间:2014-01-14 19:52:52

标签: android arrays list

我是Android的编程新手,所以也许我的问题很容易解决但仍然如此。我试图制作一系列不同的数据类型:

我必须在那里添加:

   int number
   String name 
   int number_2
   int time
   int total
     


现在我的问题是如何以最简单的方式实现它,以及如何从中获取数据。如果我必须为这些变量获取不同的记录并将其存储到列表中。
还有一个关于如何保持我在数组中处理的所有值的方法的问题。 我必须保留它,因为在我的程序中我必须回到其他活动前往另一个并再次收集数据并将其添加到我的阵列。

什么是最好最简单的解决方案?

提前感谢您的帮助

2 个答案:

答案 0 :(得分:0)

您可以将数组创建为对象数组。所有其他类都派生自Object,因此您将能够在Array中存储所有类型的对象。但是,在能够安全地解释为特定类的对象之前,您必须检查从Array获得的对象的类型。而且,你必须使用Integer而不是int。

如果您打算存储在Array中的所有(或至少多个)元素属于一个(物理)实体,您可以创建一个自定义Class,它将自己的属性保存为类成员,并使用此Class的实例列表填充您的数组。

此外,如果您计划向数组添加元素,则应使用List代替,例如ArrayList

至于保留数据,您必须将其存储在数据库中,或将其保存到文件中。无论哪种方式,您都必须在活动结束时保存它,并在活动开始后再次加载

答案 1 :(得分:0)

要跨活动传递数据,您需要使用可以存储在intent中的对象传递它们。似乎最好的处理方法是创建一个PREFS文件来存储数据或创建一个扩展Parcelable的对象,如下所示:

https://stackoverflow.com/questions/18593619/android-parcelable-object-passing-to-another-activity

假设您需要单个对象中的所有数据,并且您不希望“putExtra”包含一堆字段,并且您还希望确保数据可以从一个活动传递到另一个活动,则可以使用Parcelables。否则,可以使用一个简单的Util类来读取和写入PREFS文件:

android read/write user preferences

数据库总是另一种选择,但似乎超出了你的问题范围。