我有一个HashMap:
HashMap<Integer, Person> map
密钥实际上是我从Calendar.MONTH获得的月份(int)。这意味着它从0到11,每个月都有一个Person关联类型的对象。
假设我们二月份,我想要做的是过去4个月的所有人,但我找不到办法做到这一点。此外,我们必须假设地图中可能缺少一个月,因此在这种情况下,我会将本月的人视为&#34; 0&#34;或者无效或者其他什么,但我不想&#34;跳过&#34;它
任何人都可以帮我解决这个问题吗?我不知道&#34;正确&#34;实现这一目标的方法。
答案 0 :(得分:1)
以下是您需要执行的步骤:
从Calendar实例获取当前月份。月份是0到11。
创建一个循环4次的for循环
在循环中,从Map获取当月的Person。将人员添加到列表中。
在循环中,从当前月份减去一个月。如果当前月份小于零,则将当前月份添加12。
您的列表将包含4个Person对象,如果这是Map返回的内容,则为null。