Java - 返回集合

时间:2015-12-23 05:32:19

标签: java collections hashmap

问题: 编写一个名为personIndex()的方法,在其中传入person对象的ArrayList。将每个人对象及其对应的ID号放在HashMap中。按顺序返回人物对象的集合。

有人可以解释/展示我会怎么做吗?

这是我的代码:

public Collection<person> personIndex(ArrayList<Person> parameterArr)
{
    HashMap<String, Person> answerMap = new HashMap<String, Person>();

    for (Person p: parameterArr)
    {
        answerMap.put(p.getID(), p)
    }
     return answerMap.values();
}

问题:我的代码是否正确?它会归还一个集合吗?

我想知道这是否是一种返回集合的语法正确方法,还有你如何编写这个方法?

问题:
当你编写方法时,没有返回任何内容,但是编译器说一切都是语法正确的

谢谢!

1 个答案:

答案 0 :(得分:0)

您似乎没有遇到任何问题,除了没有资本化之外,#34; person&#34;在您的方法中返回类型以表示Person类。

enhanced-for循环完成后,您得到一个散列映射的结果,其中键是类型为String的人员ID,值为Person个对象。如果你想按顺序返回带有键的hashmap(1 ... 2 ... 3 ... 4),你可以看到这个问题how to sort Map values by key in Java。由于String已经实现了Comparable接口,因此我链接的问题中的各种方法将使用预定义的排序方法(来自String类)来对字符串进行排序。

对hashmap进行排序后,您可以将值作为集合获取并返回该值,因为现在它将根据ID进行排序。

将来请展示您在hashmap中订购密钥的尝试。