根据第 1 列将数据添加到 arraylist

Add data into arraylist based on 1st column

我是 java arraylist 的新手。我在创建 arraylist 时遇到了困难。这是下面的例子。 s1,s2,s3,s4,s5 是人们选择并添加数字的类别,

{[s1,0]}
{[s2,0]}
{[s3,0]}
{[s4,0]}
{[s5,0]}

例如,s1:2、s2:3、s1:3、s5:4、s3:2。我怎样才能让输出变成这样

{[s1,5]}
{[s2,3]}
{[s3,2]}
{[s4,0]}
{[s5,4]}

我希望有人能在这方面帮助我。

这里你需要的是一张地图。例如 Map<String, Integer> map = new HashMap<String, Integer>();。然后添加您将执行以下操作 map.put("s1", 1);。 ArrayList 只是一个由数组支持的列表的实现,因此不能有键值对。为了更新一个值,你只需这样做:
int current = map.get("s1"); map.put("s1", current++);

如果您需要通过一个键来跟踪多个值,那么您将使用 ArrayList 的映射,声明如下:

Map<String, ArrayList<Integer>> map = new HashMap<String,ArrayList<Integer>>();
ArrayList<Integer> s1sValues = new ArrayList<Integer>();
s1s.add(1);
s1s.add(2);
map.put("s1", s1sValues);
//To add to existing
map.get("s1").add(3);//If you don't already have a reference
s1sValues.add(4);//If you do have the reference.

`