我有這個事件類,我想使其更通用,所以我可以返回其他類型,而不僅僅是用戶,是否有一種方法在這個事件類內自動鑄造,或者我應該每次都在外面做的呢?Java泛型自動鑄造
您有什麼建議嗎?
我有什麼
public class Event {
protected String name;
protected Pair<String, User> event;
public String getName() {
return event.first;
}
public User getData() {
return event.second;
}
public Event(String name, User data) {
event = Pair.create(name, data);
}
}
我想
public class Event<T> {
protected String name;
protected Pair<String, T> event;
public String getName() {
return event.first;
}
public T getData() {
return event.second; //cast to type
}
public Event(String name, T data) {
event = Pair.create(name, data);
}
}
沒有必要投(但我們沒有對' (定義),因爲(看來)'second'是類型'T','getData()'是'T'。 –
我沒有得到你想要的東西。如果我沒有遺漏任何東西,你發佈的第二個代碼應該可以工作。 –
你爲什麼認爲你需要從「T」到「T」? – f1sh