我的表里现在有这些数据
index name age
1 A 22
2 B 23
3 C 22
4 D 12
5 E 12
6 F 22
7 G 23
8 H 21
9 I 21
10 J 18建立这张表的类
class People{
int index;
String name;
int age;
}
Vector<People> vPeople = new Vector<People> ();//将这10条数据存入vPeople中
问题来了:我现在想把年龄相同的存在一个Vector中。也就是说是一个嵌套的Vector<Vector<People>> vvPeople
内层的Vector是所有年龄相同的vector,如上例中外层的vector的size = 5,因为有5种年龄。
请问如何从vPeople中解析出vvPeople?谢谢
我先说下我的想法:我是把vPeople按照AGE排序,然后从0索引,0和1比较,如果年龄不相等就新建一个vector,
相等就存入当前VECTOR,但实现起来总是会丢失size()-1那个元素。请问你们有什么好办法吗?
index name age
1 A 22
2 B 23
3 C 22
4 D 12
5 E 12
6 F 22
7 G 23
8 H 21
9 I 21
10 J 18建立这张表的类
class People{
int index;
String name;
int age;
}
Vector<People> vPeople = new Vector<People> ();//将这10条数据存入vPeople中
问题来了:我现在想把年龄相同的存在一个Vector中。也就是说是一个嵌套的Vector<Vector<People>> vvPeople
内层的Vector是所有年龄相同的vector,如上例中外层的vector的size = 5,因为有5种年龄。
请问如何从vPeople中解析出vvPeople?谢谢
我先说下我的想法:我是把vPeople按照AGE排序,然后从0索引,0和1比较,如果年龄不相等就新建一个vector,
相等就存入当前VECTOR,但实现起来总是会丢失size()-1那个元素。请问你们有什么好办法吗?
你看看你有没有把最后一个加入到vector中去
在最后一个需要特殊处理一下
是啊,最后一个元素很头痛。感觉实现起来不太明智。就是想问有没啥好方法,请告知 MAP 是怎么个简单法?我对你的回答很感兴趣。
Map<Integer,List<People>> data ,key为年龄。list为同一年龄的People的集合。
组合数据的方法为:
循环Vector <People> vPeople = new Vector <People> ();
判断People的age在data中是否存在,如果存在,则取出来,添加当前People进去,如果不存在,则创建一个List<People>,添加当前People进去,然后把该list放入data就可以了。10行代码就搞定了。