在ArrayList列表中有以下记录部门A  姓名1 日期1
部门A  姓名1 日期2
部门A  姓名1 日期3部门A  姓名2 日期1
部门A  姓名2 日期2
部门A  姓名2 日期3部门B  姓名3 日期1
部门B  姓名3 日期2
部门B  姓名3 日期3
如何输出列表,实现以下格式(首先根据部门分组,在通过姓名分组,再通过日期)
部门A
  姓名1
      日期1
      日期2
      日期3
  姓名2
      日期1
      日期2
      日期3部门B
  姓名3
      日期1
      日期2
      日期3