gpt4 book ai didi

search - 遍历 HashMap

转载 作者:行者123 更新时间:2023-12-01 06:14:50 25 4
gpt4 key购买 nike

好的,所以我目前正在研究一种搜索方法,搜索的术语遍历数据库,并将匹配的产品添加到具有 2 个整数字段的 hashMap。

然后在制作 hashmap 之后,将显示项目,但是我无法让 hashmap 打印出详细信息

这是我的代码

public HashMap<Integer, Integer> bankSearch = new HashMap<Integer, Integer>();

和使用

    Iterator it = bankSearch.entrySet().iterator();
while (it.hasNext()) {
HashMap.Entry pairs = (HashMap.Entry)it.next();
System.out.println(pairs.getKey() + " = " + pairs.getValue());
if (bankItemsN[i] > 254) {
outStream.writeByte(255);
outStream.writeDWord_v2(pairs.getValue());
} else {
outStream.writeByte(pairs.getValue()); // amount
}
if (bankItemsN[i] < 1) {
bankItems[i] = 0;
}
outStream.writeWordBigEndianA(pairs.getKey()); // itemID
}

当前错误

.\src\client.java:75: cannot find symbol
symbol : class Iterator
location: class client
Iterator it = bankSearch.entrySet().iterator();
^
.\src\client.java:77: java.util.HashMap.Entry is not public in java.util.HashMap
; cannot be accessed from outside package
HashMap.Entry pairs = (HashMap.Entry)it.next();
^
.\src\client.java:77: java.util.HashMap.Entry is not public in java.util.HashMap
; cannot be accessed from outside package
HashMap.Entry pairs = (HashMap.Entry)it.next();
^
3 errors
Press any key to continue . . .

最佳答案

您收到的错误是由于:

  • 您没有导入 java.util.Iterator

  • HashMap.Entry 是私有(private)内部类。你应该使用 Map.Entry

此外,正如 templatetypedef 所说,您应该使用 Iterator 的通用版本,或使用 for-each 结构。

附录

下面是一些实际代码,演示了这两种方法:

import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;

public class MapExample {
public static void main(String[] args) {
Map<String, Integer> m = new HashMap<String, Integer>();
m.put("One", 1);
m.put("Two", 2);
m.put("Three", 3);

// Using a for-each
for (Map.Entry<String, Integer> e: m.entrySet()) {
System.out.println(e.getKey() + " => " + e.getValue());
}

// Using an iterator
Iterator<Map.Entry<String, Integer>> it = m.entrySet().iterator();
while (it.hasNext()) {
Map.Entry e = (Map.Entry<String, Integer>)it.next();
System.out.println(e.getKey() + " => " + e.getValue());
}
}
}

关于search - 遍历 HashMap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7007513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com