Cho*_*hop 3 java data-structures
我正在使用Java SAX解析器读取一个巨大的xml文件:http://api.steampowered.com/IEconItems_440/GetSchema/v0001/? format = xml (2.82 MB)
此文件包含数千个"项目",每个项目都具有"名称","级别"等属性.其中一个属性是名为"defindex"的唯一整数标识符.我正在为每个项目创建POJO,上面提到的一些属性为字段(defindex就是其中之一).
我的问题是:我应该如何存储这些物品?
我的第一个想法是将它们存储在一个数组中并使用defindex作为实际的数组索引,但是数组将是巨大的并且不是所有的defindex都被使用,例如它在一点上从2k跳到30k.
用一个Map.
Map 对象存储唯一"键"和值之间的关系.
实现Map是HashMap和TreeMap等等.它们是通用的,带有键和值的类型参数.
您可以使用以下内容.这是绝对的伪代码; 适应它然而你将要操纵这些对象.我没有考虑SAX API; 这只是演示如何使用Map.
Map<Integer, Item> items = new HashMap<Integer, Item>();
for (Item itemToRead : file) { // or however you iterate
items.put(item.getDefindex(), item);
}
// data retrieval
Item itemToRetrieve = items.get(defindexToGet);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
388 次 |
| 最近记录: |