小编Kir*_*ill的帖子

使用Java中的HashMap打印出字符串重复项

我有这个代码:

HashMap<String, Integer> dupeMap = new HashMap<>();
                for (String name : sortWords)
                    if(dupeMap.containsKey(name)) {
                        int count = dupeMap.get(name);
                        dupeMap.put(name, ++count);
                    } else {
                        dupeMap.put(name, 1);
                    }

                System.out.printf("Duplicates: %s\n", dupeMap.entrySet());
Run Code Online (Sandbox Code Playgroud)

我希望它在迭代我的ArrayList之后打印出重复项(它是事先创建的,它只是读取给定的文件并按字母顺序对字符串进行排序).截至目前,它以这种方式打印出重复的内容:

重复:[8 = 1,2 = 2,7 = 2,4 = 1]

有没有办法将它成对打印出来(key = value \n key = value等)并且没有实际提到独特的单词?

我是地图的新手,所以即使对于这段代码我也要搜索stackoverflow,虽然我脑子里有同样的想法,但却无法想出一个好的方法来编写它.

java hashmap

3
推荐指数
1
解决办法
324
查看次数

程序绕过具有多个条件的循环(java)

我有这个非常简单的代码:

public class ArrayIO {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);    
        System.out.println("Enter a number from 50 to 150: ");
        int elements = sc.nextInt();

        while(elements<50 && elements>150) {
            System.out.println("Less than 50 or more than 150");
            elements = sc.nextInt();
        }
            sc.close();

            ArrayList<Integer> integers = new ArrayList<>();
            for(int i=1; i<=elements; i++) {
                integers.add(i);
            }

            integers.toArray();

            System.out.printf("Array size is %d\n", integers.size());

    }

}
Run Code Online (Sandbox Code Playgroud)

但是当我的程序有多个条件时,我的程序会完全绕过while循环.它只适用于一种情况.我觉得我正在做一些非常愚蠢的错误,但我已经差不多一个小时了.

java while-loop java.util.scanner

0
推荐指数
1
解决办法
71
查看次数

标签 统计

java ×2

hashmap ×1

java.util.scanner ×1

while-loop ×1