1
如何將下列C#代碼轉換爲Java?將C#泛型轉換爲Java泛型
private T GenericMethod<T>(String value)
{
return (T)Enum.Parse(typeof(T), value , true);
}
如何將下列C#代碼轉換爲Java?將C#泛型轉換爲Java泛型
private T GenericMethod<T>(String value)
{
return (T)Enum.Parse(typeof(T), value , true);
}
無論你打電話給你的方法:
// C#
MyEnum value = TemplateMethod<MyEnum>("AnEnumValue");
在Java中,你可以做這樣的:
// Java
MyEnum value = MyEnum.valueOf("AN_ENUM_VALUE");
如果你擔心的情況下,如果你遵循Java約定使用大寫枚舉值,那麼你可以這樣做:
MyEnum value = MyEnum.valueOf(anEnumValue.toUpperCase());
爲了將其封裝在一個方法:
static <E extends Enum<E>> E parse(Class<E> enumType, String value) {
return (E)Enum.valueOf(enumType, value.toUpperCase());
}
這樣稱呼它:
MyEnum value = parse(MyEnum.class, anEnumValue);
首先改變你的方法簽名如下:
private <T> T TemplateMethod(String value)
無論是C#還是Java有模板。編輯:編輯。 –