求思路, 需要做一个容器,容器内的元素既需要用上list功能(用于排序),也需要用上Map功能(用于key快速搜索),请问一般大家是如何实现?
求思路, 需要做一个容器,容器内的元素既需要用上list功能(用于排序),也需要用上Map功能(用于key快速搜索),请问一般大家是如何实现?
我现在的做法是,在class内部同时封装了一个ArrayList对象及HashMap对象, 通过代码保证两个对象内的元素是一样的, 需要用上list功能时则调用ArrayList对象的方法,需要map功能则调用HashMap对象的方法.
想找一个更好的方法,谢谢.
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------我有一个方法,不知行不行.
用toArray把ArrayList转换成数组,然后再用HashMap对象的方法.
比如:
List t = new ArrayList();
t.toArray(T<> a);
Map m = new HashMap();
m.put(key, vaule); //key是查找的索引, vaule是数组的下标.
------解决方案--------------------
一个类是不可能同时实现 List 和 Map 接口的。实现的办法就是写一个新的类。
http://blog.csdn.net/YidingHe/archive/2009/01/05/3711730.aspx
------解决方案--------------------写个类封装2个list进去,一个存键,一个存值,按值排序