Chr*_*sco 8 java vector arraylist
我正在开发一个Android游戏,我只是注意到,因为onTouchEvent在UI线程上运行,并且更新/渲染方法是从一个单独的线程运行的,所以它们都会更新ArrayList包含实体的内容.显然,如果他们碰巧同时修改了列表,他们会发生冲突.
我读到Vector该类ArrayList与Vector同步的唯一区别完全相同,因此它们不会发生冲突.真的吗?如果是的话,它是否有任何性能问题或我应该关注的事情?我之前从未上过Vector课.
编辑:我实际上的意思是改变
ArrayList<Obj> list = new ArrayList<Obj>();
至
Vector<Obj> list = new Vector<Obj>()
但正如答案所说,Vector不建议使用.选定的答案解决了我的问题.
Ser*_*ari 29
对于那些必须与遗留代码作斗争的人,请执行以下操作:
new Vector<Obj>(anyThingWhichImplemntsCollection);
Run Code Online (Sandbox Code Playgroud)
这是老人Vector尝试不使用Vector而是使用
示例:
list = Collections.synchronizedList(list);
Run Code Online (Sandbox Code Playgroud)
Vector被认为是过时的和不赞成的阅读为什么vector过时了?