【发布时间】:2014-01-06 08:43:18
【问题描述】:
我想在下面有这样的东西(例如我将如何在 C# 中执行此操作),以从 SQLiteDB 获取类型值:
private T GetValueFromDB<T>(String colName) {
object returnValue = null;
switch (typeof(T)) {
case Boolean:
returnValue = dbData.getInt(colName) == 1;
break;
case Int32:
returnValue = dbData.getInt(colName);
break;
case Int64:
returnValue = dbData.getLong(colName);
break;
case String:
returnValue = dbData.getString(colName);
break;
}
return (T)returnValue;
}
是否有可能(使用 switch case 或 if else)在 Java 中实现它?
【问题讨论】:
-
没有办法在运行时获取泛型类型参数的实际类。前段时间遇到过同样的问题。
-
我不明白这个函数的含义。你会如何使用这个功能?而在Java中,方法的定义应该是这样的:private
T FOO(String colName)
标签: java generics methods switch-statement typeof