越简单 越实用。越少设计,越易懂。
需求背景:
创建方法,声明一个hashset,
元素为 {“#DE3200”, “#FA8C00”, “#027B00”, “#27B600”, “#5EB600”} 。
对应的key为 key1 、key2、key3、key4、key5。
封装该方法,根据key返回对应颜色值。
解题答案:
以下是一个方法,创建一个 HashMap
,并根据给定的 key
返回对应的颜色值:
方法代码
import java.util.HashMap;
import java.util.Map;public class ColorMapper {// 创建方法public static String getColorByKey(String key) {// 定义颜色对应的 HashMapMap<String, String> colorMap = new HashMap<>();colorMap.put("key1", "#DE3200"); colorMap.put("key2", "#FA8C00"); colorMap.put("key3", "#027B00"); colorMap.put("key4", "#27B600"); colorMap.put("key5", "#5EB600"); // 返回对应颜色return colorMap.getOrDefault(key, "#000000"); // 默认颜色为黑色}// 测试方法public static void main(String[] args) {System.out.println(getColorByKey("jf")); // 输出: #DE3202System.out.println(getColorByKey("gf")); // 输出: #FA8C16System.out.println(getColorByKey("unknown")); // 输出: #000000}
}
方法说明
colorMap.put(key, value)
:- 将每种颜色对应的
key
和颜色值存储到HashMap
中。
- 将每种颜色对应的
getOrDefault(key, defaultValue)
:- 如果
key
存在于HashMap
中,返回对应值;否则返回默认值#000000
。
- 如果
使用示例
运行 main
方法可以看到根据输入 key
返回对应颜色值。如果输入的 key
不在定义中,将返回默认值。
这段代码适合应用在需要动态获取颜色配置的场景,比如数据可视化图表中的配色逻辑。