gpt4 book ai didi

java - 获取元素而不迭代

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:09:13 24 4
gpt4 key购买 nike

我有一个 HashMap 键值对的 ArrayList,看起来像

ArrayList<HashMap<String, String>> myList = 
new ArrayList<HashMap<String, String>>();

我知道我可以遍历这些项目并找到匹配项,但这似乎是一项昂贵的任务。有没有其他方法可以在不迭代的情况下获取元素?

我的 ArrayList 的值类似于

[{Father Name=a, Mother Name=b, Child Name=c, Reg No=1, Tag ID=1}, 
{Father Name=p, Mother Name=q, Child Name=r, Reg No=2, Tag ID=2},
{Father Name=x, Mother Name=y, Child Name=z, Reg No=3, Tag ID=3}]

基于RegNo,我希望在不迭代单个项目的情况下获得父亲姓名、母亲姓名和 child 姓名。

最佳答案

如果不进行迭代,您需要将 HashMap 存储在另一个具有键 Reg No 的 HashMap 中.虽然我建议使用 Family对象或类似的东西:HashMap<Integer, Family> registration (这就是 OO 语言的美妙之处 :) )

class Family {
String father;
String mother;
String child;

// constructor getters setters
}

Map<Integer, Family> registration = new HashMap(); // note this is a JDK7 future
//Map<Integer, Family> registration = new HashMap<Integer, Family>(); // the 'old' way
registration.put(regNo, new Family("Jack", "Mary", "Bastard"));

Family family = registration.get(regNo);
String father = family.getFather();

关于java - 获取元素而不迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16372439/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com