Re: [問題] compile後出現的note
==> adrianshum@kkcity.com.tw ( ) 提到:
> ※ 引述《cplusplus.bbs@ptt.cc (大口小口吃炒飯)》之銘言:
> > 其實並不能互換的,
> > ArrayList沒有同步化的機制,Vector有同步化的機制
> > 不需要同步化機制就用ArrayList,可以提升效率
> > 所以實際上,各有所需之處,也不能互換
> > ---
> > 只是剛好看到提出來而已,不要戰我 (怕)
別這麼說
我不會想隨便戰人
我提到vector arraylist可以互換
是想要解釋為啥我覺得Date有需要
就我個人經驗而言
date timestamp都有需要
就像我認為
vector arraylist都有需要一樣
我個人以為 可不可以被取代跟該不該消失是兩回事
最後,當然可以互換
把arraylist synchronize起來就可以了(如下面的例子)
> 其實 Vector 是該被拔掉的...
> 因為 Sun 現在建議是用 Collections.synchronizedList(new ArrayList())
> 來達成 synchronized list
我只有在arraylist那邊看到SUN建議當使用arraylist而且需要注意synchronization
時候這樣用,
並沒有看到SUN建議不要用vector
http://www.javaworld.com/javaworld/javaqa/2001-06/03-qa-0622-vector.html
這篇文章是我看到的對兩者的一些說明
> Alien
其實我都是看需求
有些時候用arraylist因為只會讀,不會寫
有synchronization考量的時候,再用vector
會這樣是因為arraylist沒有synchrinization機制,速度比較快
此外,在現在許多n-tier應用上,用interface來傳遞物件會比較自由
從callee回傳到caller傳的是interface
callee
public Collection funcA()
{
Vector v....
...
return v;
}
而caller得到回傳物件後,自己再決定如何使用
public void funcB()
{
Collection c = funcA();
這裡就隨便你怎麼使用這個c
你可以轉成Vector,也可以變成ArrayList
}
這樣兩邊的programmer都有比較多的彈性
--
----------------------------------------------
Yen-Lin Yin
Applications Developer
Some City, Some State
----------------------------------------------
--
☆ [Origin:椰林風情] [From: host-24-225-146-213.patmedi] [Login: **] [Post: **]
討論串 (同標題文章)
完整討論串 (本文為第 23 之 30 篇):
java 近期熱門文章
PTT數位生活區 即時熱門文章
9
16