zoukankan      html  css  js  c++  java
  • 泛型方法实现 传入类型和返回类型一致(当参数是HashMap时返回HashMap,TreeMap时返回TreeMap)

    实现:

    根据需要实现返回类型是HashMap<String,Object> 或者TreeMap<String,Object>

    // 方法 当传入是HashMap<String,Object>时,返回HashMap<String,Object>;当传入是TreeMap<String,Object>时,返回TreeMap<String,Object>
    public static  <T extends Map<String,Object>> T 
      createSignMap(T params,String token,String orderNo){
    params.put("token", token); params.put("orderNo", orderNo); return params;
    }
    // 调用:返回HashMap<String,Object>
    HashMap<String,Object> transMap = new HashMap<String,Object>();
    transMap = createSignMap(transMap,token,orderNo,);               

    上面版本提示:Variable is already assigned to this value [变量已分配给该值]

    警告敏感:

    // 方法 当传入是HashMap<String,Object>时,返回HashMap<String,Object>;当传入是TreeMap<String,Object>时,返回TreeMap<String,Object>
    public static  <T extends Map<String,Object>> T 
      createSignMap(T params,String token,String orderNo){
           params.put("token", token);
           params.put("orderNo", orderNo);
           return params;
    }
    // 调用:返回HashMap<String,Object>
    HashMap<String,Object> transMap = new HashMap<String,Object>();
    createSignMap(transMap,token,orderNo,);   
    

      

  • 相关阅读:
    各大公司 Java 后端开发面试题总结
    java程序开发工具集的使用
    删数
    能量项链//区间DP
    合并傻子//区间dp
    P1005 采药
    表达式计算系列
    进制转换
    最长公共子序列
    乘法游戏
  • 原文地址:https://www.cnblogs.com/ysloong/p/14257816.html
Copyright © 2011-2022 走看看