假设我有以下课程:
Main->Worlds->Country->Cities->Streets->People->Person
让我们说每个班级都有自己的ArrayList
。
如果我只能访问World
课程,要按照他的名字找一个人,我应该全力以赴吗
getWorlds()->getCountries()->getCities()->getStreets()->getPeople()->getPersonByName('dani')
并像循环一样,搜索所有instances
。
或者,在我的ArrayList<Person>
课程中创建类似Main
并在此ArrayList<Person>
和People
的班级实例中同时拥有这些人员也是一种很好的做法。
我希望我对我的问题很清楚。如果不清楚,请评论我。
需要明确的是,问题是不以他的名字找到一个人,可能是姓氏,身份证或其他任何内容。
答案 0 :(得分:1)
您可以将其与数据库完全相同......将其映射到其他内容。
例如..
person array
world
city
street
country
world array
countries
country array
cities
city array
streets
street array
people
你可以拥有一个包含所有人的主阵列。
其他一切都会有彼此的子集。
答案 1 :(得分:0)
在主类中创建一个hashmap(或者更好的某种类型的存储库calss),它将按名称映射所有人(在创建“街道”对象时向其添加项目,如果适用)。 通过这种方式,您可以在系统的所有部分快速获取姓名。