相关疑难解决方法(0)

如何有效地迭代Java Map中的每个条目?

如果我有一个Map用Java 实现接口的对象,并希望迭代其中包含的每一对,那么通过地图的最有效方法是什么?

元素的排序是否取决于我对界面的具体映射实现?

java iteration collections dictionary

3113
推荐指数
41
解决办法
238万
查看次数

在Java TreeMap中查找元素位置

我正在使用字符串的TreeMap TreeMap<String, String>,并使用它来实现单词的Dictionay.

然后我有一个文件集合,并希望在字典定义的向量空间(单词空格)中创建每个文件的表示.

每个文件都应该有一个向量来表示它,具有以下属性:

  • 矢量应该与字典大小相同
  • 对于文件中包含的每个单词,向量在与字典中的单词位置对应的位置应该具有1
  • 对于未包含在文件中的每个单词,向量在与字典中的单词位置对应的位置应该具有-1

所以我的想法是使用a Vector<Boolean>来实现这些向量.(这种表示集合中文档的方式称为布尔模型 - http://www.site.uottawa.ca/~diana/csi4107/L3.pdf)

我在创建这个向量的过程中遇到的问题是我需要一种方法来查找字典中单词的位置,如下所示:

String key;
int i = get_position_of_key_in_Treemap(key); <--- purely invented method...
Run Code Online (Sandbox Code Playgroud)

1)我可以在TreeMap上使用这样的方法吗?如果没有,你能不能提供一些代码来帮助我自己实现它?

2)TreeMap上是否有一个迭代器(它按字母顺序排列),我可以获得它的位置?

3)最终我应该使用另一个类来实现字典?(如果你认为使用TreeMaps我不能做我需要的)如果是的话,哪个?

提前致谢.

增加部分:

由dasblinkenlight提出的解决方案看起来很好,但是存在复杂性问题(由于将密钥复制到数组中而与字典的维度呈线性关系),并且不能接受为每个文件执行此操作的想法.

对我的问题还有其他想法吗?

java dictionary iterator treemap sortedmap

19
推荐指数
3
解决办法
2万
查看次数

Java中的.NET SortedDictionary相当于什么?

如果.NET有一个SortedDictionary对象......请问Java中的这个是什么?我还需要能够Enumeration在Java代码中检索(元素)..因此我可以迭代所有键.

我在想它是一个TreeMap?但是,我不认为有Enumeration这样的暴露?

有任何想法吗?

.net java enumeration sorteddictionary data-structures

10
推荐指数
2
解决办法
6761
查看次数