0

我正在用android开发一个项目。我有五个字符串类型的数组,数组中的每个项目都与其余数组的相应索引相关。在这里,我需要对单个数组进行排序,如果我进行排序,则所有相应的索引都应该以正确的顺序复制,因为它存在于排序的数组中。

源代码:

array1 = new String[qrcodelist.size()];
array2 = new String[name.size()];
array3 = new String[company.size()];
array4 = new String[date.size()];
array5 = new String[imageurl.size()];


for (int i = 0; i < name.size(); i++) {
    array1[i] = qrcodelist.get(i);
    array2[i] = name.get(i);
    array3[i] = company.get(i);
    array4[i] = date.get(i);
    array5[i] = imageurl.get(i);

}

我想用同样的方法实现,HashMap但不知道怎么做。

我请求你给我一个逻辑来实现这个任务或任何示例代码。

4

4 回答 4

2

我建议您检查您的数据结构。我的意思是,将数据拆分为单独的数组似乎不是一个好主意。所有相关数据都应包含在一个对象中。

请检查这个问题:如何在java中对多个数组进行排序

于 2012-08-30T09:27:44.330 回答
2

在我看来,您正在遭受“拒绝对象”的困扰。您的描述不是很清楚,但似乎您需要一个包含“QR 码”、“名称”等字段的类。一旦有了它,您就会拥有一个包含该类实例的单个数组,而不是 5 个单独的数组。

现在您可以使用 a 对数组进行排序,Comparator以便对其进行任何排序。

于 2012-08-30T09:27:46.847 回答
0

据我了解,我猜您只想对数组进行排序,下次搜索它。这里有一个很好的例子:Android 排序数组

搜索类似 java 排序数组之类的词,以获得更多关于该主题的信息。

于 2012-08-30T09:22:35.250 回答
0

您应该使用一个对象来存储与每个实体对应的所有数据,将每个对象放入 Collection 或 Array 中,然后对它们进行排序,实现 Comparable 接口:

public class MyData implements Comparable<MyData> {

private String qrcodelist;
private String  name;
private String  company;
private String  date;
private String  imageurl;

//more code...
}
于 2012-08-30T09:38:14.407 回答