2

我想在 JAVA 中创建同步的 ArrayList。我用过这段代码:

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

但是 NetBeans 喊道:

不兼容的类型:

必需:ArrayList 找到:列表

任何可能的帮助?

4

5 回答 5

5

Collections.synchronizedList()返回一个List,而不是一个ArrayList。像这样声明用户列表:

static List<User> listOfUsers = Collections.synchronizedList(new ArrayList<User>());
于 2013-08-27T12:21:02.923 回答
4
Collections.synchronizedList()

返回一个List。使用类似的东西:

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

每个ArrayList都是List但每个List都不是ArrayList

于 2013-08-27T12:20:59.600 回答
3
static List<User> listOfUsers = Collections.synchronizedList(new ArrayList<User>());

应该解决问题。

于 2013-08-27T12:21:08.270 回答
0

Collections.synchronizedList返回一个新SynchronizedList<User>实例,转换回List<User>. 如果您的声明通过

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

, 它会好起来的。

于 2013-08-27T12:23:17.640 回答
0

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

为我工作

于 2013-08-27T12:23:56.893 回答