javaの初心者です。
以下のようなデータを保持したい場合、どのようにデータを保持し、追加していくのがいいのでしょうか。
追加の際には、「name」と「user」が一つずつ処理され、変数に貯めたいです。
name、userともにString型になります。
nameやuserに関しては可変長です。
nameが重複した際にはすでに存在しているnameのuserとして追加したいです。

※複数のnameに対して、userが所属することもある
※name内でuserは一意になる

{
  name_1  : [user_1,user_2,user_4....user_n],
  name_2 : [user_1, user_5....user_n],
  ... : [user_1, user_10, ....user_n ],
  name_n : [user_3, user_5, ....user_n ]
}

データの蓄積のイメージ(例)
1. {}
2. {name_1 : [user_1]}
3. {name_1 : [user_1,user_2]}
4. {name_1 : [user_1,user_2], name_3 : [user_4]}

ご教示いただけますと幸いです。