-2
在C#上工作,在泛型中不适用于值类型(如int),希望所有数据类型的扩展方法如:int,long,string.conversion方法是波纹管通用如何将一种类型的数据转换为另一种类型的数据
public static T Translate<T>(this T inputNumber) where T : class
{
return inputNumber.ToString()
.Replace("1", "1")
.Replace("2", "2")
.Replace("3", "3")
.Replace("4", "4")
.Replace("5", "5")
.Replace("6", "6")
.Replace("7", "7")
.Replace("8", "8")
.Replace("9", "9")
.Replace("0", "0") as T;
}
var result= 2.Translate<longTypeData>();
希望结果变量长类型的数据。
@TimSchmelter他们似乎是不同的Unicode字符 –
@RenéVogt,你是对的。 – shamim
我不认为这是可能的,因为如果没有'class'约束,你不能使用'as T'。 – Kamo