所以,這是我之前提出的後續問題。我寫了下面的代碼:擴展內聯通用抽象模板類
import java.util.List;
import java.util.Iterator;
public abstract class IterableList<T> {
public void perfrom(List<T> ls) {
Iterator<T> l = ls.iterator();
while (l.hasNext())
action(l.next());
}
protected abstract void action(T obj);
}
這是創建一個模板(像八九不離十在C宏)這樣我就可以實現的操作方法,並通過許多事情列表中的迭代。我在執行內聯代碼時遇到問題(我認爲是這個詞?),但我無法弄清楚如何使用泛型編寫代碼。爲了給你什麼,我試圖做一個例子,我基本上要做到以下幾點:
new IterableList<String>{
void action(String s) {
// do something
}
}.perform(myListOfStrings);
但我沒有真正得到任何運氣,我不會給出任何有用的錯誤。我有點不熟悉Java中的熟悉區域,我還沒有在該語言中編寫過相當長的一段時間。
到目前爲止,我得到的錯誤(在eclipse中)是「令牌的語法錯誤,錯位的構造(s)」和「void是變量操作的無效類型」。就我所能理解的而言,這些方法並沒有真正的幫助。
出了什麼問題,你試過嗎? –
你需要提供更多的信息,特別是什麼不工作,以及你認爲它沒有做你想做的具體原因。否則沒有人能夠幫助你。基於你提供的小代碼,它看起來確實如此,所以問題在於你沒有共享的代碼。 –
我得到「令牌的語法錯誤,錯位的結構」和「無效的變量行爲是無效的類型」我不太確定。我正在使用eclipse。這是我得到的唯一的錯誤信息。我不知道什麼是錯的。 – user2827678