根据年份将值分组

时间:2019-06-29 06:51:29

标签: java android

例如Question就像Arraylist一样

array.add("2017",45);
array.add("2015",654);
array.add("2015",19);
array.add("2016",88);
array.add("2016",25);
array.add("2015",45);

输出将为

array1.get()//45,654,19 
array2.get()//88,25 
array3.get()//45

1 个答案:

答案 0 :(得分:0)

我很困惑,Arraylist不能那样工作。

void add(int index, Object element):此方法将指定的元素E插入此列表中的指定位置。

它将当前在该位置的元素(如果有)和任何后续元素右移(将在其索引处增加一个)。

参数:

index:要插入指定元素的索引。

element:要插入的元素。

例外: 如果指定,则抛出IndexOutOfBoundsException 索引超出范围(索引大小())。

我建议HashMap>其中年份是关键。

编辑

public List<Integer> getValueByYear(String year){
    List<Integer> values = new ArrayList<Integer>();
    for(YourObject object : array){
        if(object.getYear().equals(year){
            values.add(object.getValue())}
        }
    }
    return values;
}

希望有帮助。