一个简单带颜色的Map

越简单 越实用。越少设计,越易懂。

需求背景:

创建方法,声明一个hashset,

元素为 {"#DE3200", "#FA8C00", "#027B00", "#27B600", "#5EB600"} 。

对应的key为 key1 、key2、key3、key4、key5。

封装该方法,根据key返回对应颜色值。

解题答案:

以下是一个方法,创建一个 HashMap,并根据给定的 key 返回对应的颜色值:

方法代码

java 复制代码
import java.util.HashMap;
import java.util.Map;

public class ColorMapper {

    // 创建方法
    public static String getColorByKey(String key) {
        // 定义颜色对应的 HashMap
        Map<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")); // 输出: #DE3202
        System.out.println(getColorByKey("gf")); // 输出: #FA8C16
        System.out.println(getColorByKey("unknown")); // 输出: #000000
    }
}

方法说明

  1. colorMap.put(key, value)
    • 将每种颜色对应的 key 和颜色值存储到 HashMap 中。
  2. getOrDefault(key, defaultValue)
    • 如果 key 存在于 HashMap 中,返回对应值;否则返回默认值 #000000

使用示例

运行 main 方法可以看到根据输入 key 返回对应颜色值。如果输入的 key 不在定义中,将返回默认值。

这段代码适合应用在需要动态获取颜色配置的场景,比如数据可视化图表中的配色逻辑。

相关推荐
Grey Zeng4 小时前
Java SE 25新增特性
java·jdk·jdk新特性·jdk25
雨白5 小时前
Java 线程通信基础:interrupt、wait 和 notifyAll 详解
android·java
架构师沉默9 小时前
设计多租户 SaaS 系统,如何做到数据隔离 & 资源配额?
java·后端·架构
Java中文社群11 小时前
重要:Java25正式发布(长期支持版)!
java·后端·面试
每天进步一点_JL12 小时前
JVM 类加载:双亲委派机制
java·后端
用户2986985301412 小时前
Java HTML 转 Word 完整指南
java·后端
渣哥12 小时前
原来公平锁和非公平锁差别这么大
java
渣哥13 小时前
99% 的人没搞懂:Semaphore 到底是干啥的?
java
J2K13 小时前
JDK都25了,你还没用过ZGC?那真得补补课了
java·jvm·后端
kfyty72513 小时前
不依赖第三方,不销毁重建,loveqq 框架如何原生实现动态线程池?
java·架构