【发布时间】:2019-10-20 10:39:27
【问题描述】:
我有一个方法应该通过哈希图搜索并打印低于 X 的值(X 是用户输入)。
最好的方法是什么?
这是针对 Java 的。我只被允许使用 hashmap,没有别的。
编辑:
我试图通过获取键集中的值来遍历所有值,但没有打印出来。
public class price() {
HashMap<Integer, Integer> price = new HashMap<>(); //Hashmap.
price.put(1, 500);
price.put(2, 1000);
price.put(3, 1500); //etc
public void findLowerPrice(int x) {
for (int y : price.values()) {
if (x > y) {
System.out.print(y + " Price: " + y);
System.out.println("");
}
}
}
}
x 是用户输入,但假设用户输入 1000。 该方法应打印键 1 和 2,以及它们各自的值 500 和 1000。
【问题讨论】:
-
你试过什么?分享一些代码,所以不是自助编码网站;)
-
用我试过的方法编辑。
-
请阅读minimal reproducible example 并相应地增强您的问题。您显示的代码并不理想,但它应该可以完成这项工作。所以:包括您的示例数据。正如minimal reproducible example...
-
您可以使用
price.values()代替price.keySet()。在 java 8 中你可以使用forEach和消费者 -
它没有打印任何东西,因为你没有打电话给
findLowerPrice。如果你是,那么你应该阅读How to create a Minimal, Reproducible Example,这样我们就可以确切地看到你正在做什么以获得你声称拥有的结果,因为代码看起来可以正常工作。
标签: java