2013-01-22 136 views
0
List holder = new List(); 
holder.add(new JTabbedPane()); 
holder.add(new JTabbedPane()); 

for(JTabbedPane tab : holder) 
{ 
    System.out.println(tab.toString()); 
} 

爲什麼它顯示在for-each循環的類型不匹配的錯誤?列表迭代類型不匹配

+3

這是哪一個清單? - >'List holder = new List();' –

+0

嘗試新的ArrayList ();而不是 – Shark

+0

你必須向我們展示你的'List'類,因爲'java.util.List'是一個接口,所以你不能實例化它,並且你發佈的第一行代碼不會被編譯。 – jlordo

回答

5

嘗試用這種

ArrayList<JTabbedPane> holder = new ArrayList<JTabbedPane>(); 
     holder.add(new JTabbedPane()); 
     holder.add(new JTabbedPane()); 
     for (JTabbedPane jTabbedPane : holder) { 
      System.out.println(holder.toString()); 
     } 
0
Try: 
for(Object tab : holder) 
{ 
System.out.println(((JTabbedPane)tab).toString()); 
} 

據顯示,因爲持有人is List of Object , not List of JTabbedPane錯誤。所以當你使用for-for(JTabbedPane tab : holder)時,它會顯示編譯錯誤。