首先,我来自Java背景,请原谅我可能会犯一些错误:
这是我的类:
class ParameterHandler<T>
{
public static Dictionary<string, Converter<T>> parameters =
new Dictionary<string, Converter<T>>();
public static void addParameter(string parameterName, Converter<T> converter){
parameters.Add(parameterName, converter);
}
static T getValue(string parameterName, string stringValue){
return parameters[parameterName].getValue(stringValue);
}
}
这是我的Converter
接口。
interface Converter <T>
{
T getValue(string stringValue);
}
我想知道是否能在不将
T
声明为参数类型的情况下使用parameterhandler。我只需要像这样做:
ParameterHandler.addParameter("some", Some Implementation for Converter)
为了让你全面了解,这是我为转换器
之一的实现方案。
class IntConverter : Converter<int>
{
int getValue(string stringValue)
{
return int.Parse(stringValue);
}
}
public static Dictionary<string, Converter<T>> parameters = new Dictionary<string, Converter<T>>();
,所以函数addParameter
将只是在该字典中添加一个新条目。你懂我说的吧? - Marco DinatsoliT
有多个转换器? - Basic