循环到hashMap大小显示的arrayList是正确的,但元素少了一个。没有使用重复的密钥

时间:2019-12-03 04:50:09

标签: java hashmap

Map coreAccounts = new HashMap <>();

        List<Account> accounts = coreBankUserDetails.getAccounts();
        //

        for(int i=0;i<accounts.size();i++){
            Account model = accounts.get(i);

            coreAccounts.put(model.getAccountNumber(),model);
        }

image shows size as 5 but only 4 elements in the table

2 个答案:

答案 0 :(得分:1)

如果model.getAccountNumber()最好是Wrapper类,则最好不要重写HashCode,并且对于2个元素hascode相同的两个对象相等,则只有一种可能。因此,应检查hascode和等于Account类中的方法。

答案 1 :(得分:0)

您必须检查其中一个帐户具有空值。 因为结果显示为“不显示空元素”,并且结果大小为5,而表格仅显示4个元素。