Java “数据结构”的实现;电话簿“;

Java “数据结构”的实现;电话簿“;,java,collections,Java,Collections,我有一个电话簿,详细信息如下: ABc -> 123 bcd -> 345 cda -> 523 abc -> 678 HashMap<String, ArrayList<Integer>> phoneNumber String key = "abc".toLowerCase(); 因此,如果我想查看ABc个人的电话号码,我应该同时获得这两个号码。我们如何在java中实现这一点?意味着哪个数据结构将是最好的?如果您只是在寻找一些数据结构

我有一个电话簿,详细信息如下:

ABc -> 123 
bcd -> 345 
cda -> 523 
abc -> 678
HashMap<String, ArrayList<Integer>> phoneNumber
String key = "abc".toLowerCase();

因此,如果我想查看
ABc
个人的电话号码,我应该同时获得这两个号码。我们如何在java中实现这一点?意味着哪个数据结构将是最好的?

如果您只是在寻找一些数据结构来处理此类数据,我将提供使用数组列表的哈希映射的方法,如下所示:

ABc -> 123 
bcd -> 345 
cda -> 523 
abc -> 678
HashMap<String, ArrayList<Integer>> phoneNumber
String key = "abc".toLowerCase();

此外,如果在这个例子中字母情况很重要,考虑使用<代码> Stry.ToOrrCase](< /代码>函数),这使得上面的第二行代码如下:

ABc -> 123 
bcd -> 345 
cda -> 523 
abc -> 678
HashMap<String, ArrayList<Integer>> phoneNumber
String key = "abc".toLowerCase();

在这里发布问题时,请花更多的时间,并尝试展示一些关于您试图解决的问题的知识。@Maroun Maroun好的,请为我用这种方式尝试的解决方案提供建议..用键、值对构建一个符号表。VAL可以是字符串的链接列表。在向SYMBOLY表中添加新键VAL pair时,如果该键存在,则将VAL追加到已存在的VAL。在查询时,给定字符串s,如果该键存在,则返回给定键的VAL=s,否则返回null。这是一个规范。你为什么不开始编码呢?