用Java解决一个switch问题

switch
我们希望编写一个函数,统计一个 List 列表中的数值分布,其中 1 是 small,2 是 middle, 3 是 big,3以上都是 huge 。列表中的数值全部都在 1 到 5之间,编写程序在对象的 small, middle, big, huge 四个字段 保存正确的统计结果


public class Counter{
    int small = 0;
    int middle = 0;
    int bug = 0;
    int huge = 0;
    //... getter methods
 
    public void read(List<Integer> numbers){
        for(var value: numbers){
            switch(value){
            case 1:
                small += 1;
                break;
            case 2:
                middle += 1;
                break;
            case 3:
                big += 1;
                break;
            default:
                huge +=1;
            }
        }
    }
}
private Map<String, Integer> count(List<Integer> list) {
        Map<String, Integer> res = new HashMap<>();
        for (Integer val : list) {
            switch (val) {
                case 1:
                    res.merge("small", 1, Integer::sum);
                    break;
                case 2:
                    res.merge("middle", 1, Integer::sum);
                    break;
                case 3:
                    res.merge("big", 1, Integer::sum);
                    break;
                default:
                    res.merge("huge ", 1, Integer::sum);
            }
        }
        return res;
}