HashMap包装类使用方法

结城 Java 4 次阅读 333 字 发布于 10 天前 预计阅读时间: 2 分钟


包装类工具类

public class HashMapWrapper {

    /**
     * 将单个键值对包装成一个HashMap。
     *
     * @param key   键
     * @param value 值
     * @param <K>   键的类型
     * @param <V>   值的类型
     * @return 包装后的HashMap
     */
    public static <K, V> HashMap<K, V> wrap(K key, V value) {
        HashMap<K, V> map = new HashMap<>();
        map.put(key, value);
        return map;
    }

    /**
     * 将多个键值对包装成一个HashMap。
     *
     * @param keys   键数组
     * @param values 值数组
     * @param <K>    键的类型
     * @param <V>    值的类型
     * @return 包装后的HashMap
     */
    public static <K, V> HashMap<K, V> wrap(K[] keys, V[] values) {
        if (keys == null || values == null || keys.length != values.length) {
            throw new IllegalArgumentException("Keys and values arrays must be non-null and of the same length.");
        }
        HashMap<K, V> map = new HashMap<>();
        for (int i = 0; i < keys.length; i++) {
            map.put(keys[i], values[i]);
        }
        return map;
    }

}

包装类使用方法,用于生成验证码

@Override
    public Result<?> handleVerifyCode(String uuid) throws IOException {
        VerificationCode code = new VerificationCode();
        // 转换为Base64
        String base64Image = code.getImageByBase64();
        String text = code.getText();
        stringRedisTemplate.opsForValue().set(CAPTCHA_KEY_PREFIX + uuid, text, TIME_OUT_MIN_CAPTCHA, TimeUnit.SECONDS);
        String[] keys = {"img_type", "encoding", "encoding_captcha"};
        Object[] values = {"png", "base64", base64Image};
        HashMap<String, Object> captchaMap = HashMapWrapper.wrap(keys, values);
        return Result.success(captchaMap);
    }

生成实际效果

{
    "code": 0,
    "status": 200,
    "message": "操作成功",
    "data": {
        "img_type": "png",
        "encoding": "base64",
        "encoding_captcha": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALQAAAAoCAIAAADYC0ddAAAC5ElEQVR4Xu2YsWrdQBBFDQ6G16ZOGzC4cJEmkPyAi+DC/5A0/gXjwnW+WVFYe72aO7s7o90dyXpzuLiQZh6Ge1jpvYtpLc+XN2zonNOVm6t7emkYF/TCKlAR12UQH08OFrTEdWnnIHIgaInromWWw8wPUzkQtMSNqXIuciCoiOtCMDs8dicHC1pyzrq4HBXQkrPSxeXQgZYc2Bibw+M4ciCoyGF02UaOn6cnEjIwmq+/v5RDF5SgJawup8+/ykmHx3H3cpvLLMf8ly505V0O1GITRdAGNnStAbQkDWqxHzmCH+MUkcph5gd6kAvd7AcqgrrQnTGgE6wcgxShciS3Ftdzd7tT7t7MDzwh0JKYZK8z5eKJHLmx1dB3Dpb9yBGQzDSCciBoSXddyq3j4ZGbXIfLwSORA+nuR7Xy8J3F5XhHMtPIOjm6I69cPinH5fjP3z+fyJUPJ8ekHJZQl8PSjKlWfLybG1jBbEZIejHKgUnHRqPqWzUsgZEj2pCGDg0jrb8QutYM8QOd2MQPVd+qYQkiOejESNADDN3pROoHCoFZbg9B1bdqWIJIDktFUIVc6GYP4iOG7d7loBj7Ue1+tB8TPGIIln6o+lYNS6jLMdn6ISl+P37QG71R9a0aliCSYzL8ziJsXTjWAvstJrBDOeKkZFiIy1GB9aNdjuvvj/QSh7xv+aQcl6MO+sHKMfetSrqbQ1j5iGNjEspRfef49vCjHLqQR9J6nCmPdSEUGR8x2HE19BM1SCpPzShPanmVo1B81QwW9CMXslhtvd0M7E+S1A88NgZRrpxokRtbzUKOapa7K0E/ckk9YBM/E7vUJvkH6e8ZaYIfNmZMXP2F0OVmFHIsF0ch9yPdwrKxcjnoBPqBb6kjQAPY0LVOLN45UAhLLQIoAYbujAG1OL0dGGZ+oAc2WgREL6QOi40fG+JyNGF2hGyCy9HKgf1wOfpwSD9cjm4c7whxOXricjjngsvhZPkHDBiAa7mkleUAAAAASUVORK5CYII="
    }
}

给时光以生命,给岁月以文明
最后更新于 2026-06-15