在一堆ArrayLists中找到一个用户

时间:2013-08-27 23:01:26

标签: java android oop arraylist

假设我有以下课程:

Main->Worlds->Country->Cities->Streets->People->Person

让我们说每个班级都有自己的ArrayList。 如果我只能访问World课程,要按照他的名字找一个人,我应该全力以赴吗

getWorlds()->getCountries()->getCities()->getStreets()->getPeople()->getPersonByName('dani')

并像循环一样,搜索所有instances。 或者,在我的ArrayList<Person>课程中创建类似Main并在此ArrayList<Person>People的班级实例中同时拥有这些人员也是一种很好的做法。 我希望我对我的问题很清楚。如果不清楚,请评论我。 需要明确的是,问题是以他的名字找到一个人,可能是姓氏,身份证或其他任何内容。

2 个答案:

答案 0 :(得分:1)

您可以将其与数据库完全相同......将其映射到其他内容。

例如

..

person array

       world
       city
       street
      country

world array
      countries

country array 
      cities

city array 
       streets

street array
      people

你可以拥有一个包含所有人的主阵列。

其他一切都会有彼此的子集。

答案 1 :(得分:0)

在主类中创建一个hashmap(或者更好的某种类型的存储库calss),它将按名称映射所有人(在创建“街道”对象时向其添加项目,如果适用)。 通过这种方式,您可以在系统的所有部分快速获取姓名。