【问题标题】:Return value dynamically according to method input根据方法输入动态返回值
【发布时间】:2013-01-21 16:20:46
【问题描述】:

我已经扩展了这个方法,现在方法返回字符串但是当 memberTypeName = int 或 double 我需要 返回合适的值,动态取决于成员类型名称。 我怎样才能做到这一点 ? 如何调用这个返回泛型值的方法?

public static String tRouting(String memberTypeName,String memberName,int cnt) {

        String fieldName = memberName;

        if (memberTypeName == "java.lang.String" ) {
            fieldName = fieldName + "_" + cnt;
        }
        else if (memberTypeName == "int" ) {
            fieldName =  ?
        }
        else if (memberTypeName == "double") {
            fieldName = ?
        }
        return fieldName;
    }

【问题讨论】:

  • 我不明白这个问题。

标签: java methods parameters


【解决方案1】:

T 可以是 Integer、Double 或任何通用 Object 类型。

public static<T> T tRouting(...) {
  T retrn =...;
  ...
  return retrn;
}

【讨论】:

  • 我怎样才能调用这个方法来获取值?
  • 当我尝试像 T retrn = cnt;我收到错误类型不匹配:无法从 int 转换为 T
  • 泛型只能是对象类型而不是原始类型。
猜你喜欢
  • 2013-01-05
  • 1970-01-01
  • 1970-01-01
  • 2023-02-02
  • 1970-01-01
  • 2022-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多