在Java中使用HashMap制作莫尔斯码

时间:2018-04-13 18:50:28

标签: java hashmap

所以我正在学习如何使用HashMap对象。我的问题是,如果我使用scanner对象向用户询问String并将其保存为String变量。我怎样才能拿出那个字符串和"比较"它到我的HashMap。

例如,如果用户输入" abc"。

我的HashMap有(" a"," abra")(" b"," blastoise")(" c& #34;"喷火龙&#34)

我想打印到System.out.println结果 - abra blastoise charizard而不是abc。

我将分享我现在拥有的代码,但我仍然坚持下一步,我希望我能清楚地回答我的问题。

    public static void main(String[] args) {

    Scanner sc = new Scanner(System.in);
    String keyboard = "";
    HashMap hm = new HashMap();

    hm.put("A","Abra");
    hm.put("B", "Blastoise");
    hm.put("C", "Charizard");
    hm.put("D", "Dewgong");

    keyboard = sc.nextLine();

先谢谢你了:))

1 个答案:

答案 0 :(得分:1)

您可以使用字符作为地图的键,例如put('a',“Abra”),然后比较每个字符。

char[] str = string.toLowerCase().toCharArray();
for(char c : str)
   System.out.println(map.get(c));

还要注意'A'与'a'不同,你需要处理这样的情况,最好的是在getCharArray()之前在字符串中调用toLowerCase()。