`上干货 ~
--------------------------------------------------------------------------------------------------------------------------------------------
题文要求:
Map中有如下数据:{茄子=2, 黄瓜=2.5, 西红柿=5, 土豆=3, 豆角=3.5} 实现一个询问价格的方法(获取用户在控制台上输入的蔬菜名称,然后在该Map集合中查询对应的价格)有,则输出相对应的价格,如果没有则提示用户“已经卖完” 将黄瓜的价格上调1元(不能直接赋值3.5) 将所有蔬菜的价格大于3的蔬菜名称打印到控制台
----------------------------------------------------------------------------------------------------------------------------------------------------
代码区:
import java.util.HashMap;
import java.util.Scanner;
public class Test3 {
public static void main(String[] args) {
//1,创建 HashMap.实现 一一对应关系
HashMap<String, Double> hm =new HashMap<>();
hm.put("茄子", 2.0);
hm.put("黄瓜", 2.5);
hm.put("西红柿", 5.0);
hm.put("土豆", 3.0);
hm.put("豆角", 3.5);
//2,实现从键盘录入功能,使用到了Scanner 方法
System.out.println("请输入需要查询蔬菜的名称:");
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
//4,调用 查询的 方法.查询键盘输入的 蔬菜名称
getPrice(hm, str);
System.out.println("---------------------------------------");
//3,实现黄瓜价格上涨1元,
hm.put("黄瓜", hm.get("黄瓜")+1);
//5,输出所有价格大于3元的 蔬菜
System.out.println("所有价格大于3元的蔬菜");
System.out.println();
for (String string : hm.keySet()) {
if (hm.get(string)>3) {
System.out.print(string+" ");
}
}
}
//3,创建查询 的方法.
private static void getPrice(HashMap<String, Double> hm, String str) {
if (!hm.containsKey(str)) {
System.out.println("已经卖完");
} else {
System.out.print(str+"的价格是:");
System.out.println(hm.get(str));
}
}
}
---------------------------------------------------------------------------------------------------------------
总结:
使用到了HashMap 存储 键和值,
然后建立一一对应关系,
创建方法 然后 调用方法 查询 某种蔬菜的价格, 或者 输出 已经卖完了.
然后,通过 循环 通过判断语句,
输出 大于价格3元的某种蔬菜.
|