2013-08-27 50 views
1

我想在JAVA中創建同步的ArrayList。我用這個代碼:同步的arrayList不兼容的類型

static ArrayList<User> listOfUsers = Collections.synchronizedList(new ArrayList<User>()); 

但NetBeans的喊道:

不兼容的類型:

要求:ArrayList的 發現:名單

任何幫助可能嗎?

回答

4

Collections.synchronizedList()返回List,而不是ArrayList。聲明用戶列表這樣:

static List<User> listOfUsers = Collections.synchronizedList(new ArrayList<User>()); 
+0

不是它說類型「列表」不帶任何參數。 –

+0

@ user2721537當然可以。你是否導入了一些其他'List'而不是[java.util.List](http://docs.oracle.com/javase/6/docs/api/java/util/List.html)? – kiheru

+0

確實:我有java.awt.List Thx ;-) –

4
Collections.synchronizedList() 

返回List。使用類似:

static List<User> listOfUsers = Collections.synchronizedList(new ArrayList<User>()); 

的ArrayList列表但每列表的ArrayList

3
static List<User> listOfUsers = Collections.synchronizedList(new ArrayList<User>()); 

應該解決的問題。

0

Collections.synchronizedList返回一個新的SynchronizedList<User>實例,轉換回List<User>。如果你的宣言去

static List<User> listOfUsers = Collections.synchronizedList(new ArrayList<User>());

,它會好起來的。

0

List<User> listOfUsers = Collections.synchronizedList(new ArrayList<User>());

爲我工作