作者uopsdod (pcman)
看板java
标题[问题] OCJP考题 - ArrayList
时间Wed Feb 1 19:01:36 2017
Idenfity two benefits of using ArrayList over array in software development
A. reduces memory footprint
B. implements the Collection API
C. is multi-thread safe
D. dynamically resized based on the number of elements in the list
Answers: A, D
----------------------------------------------------------------------------
I don't undertstand that why ArrayList could reduce more memory footprint?
Could anyone give me a hand and provide some examples? Thank you.
I also posted this question on reddit(FYI):
https://goo.gl/uB1k1p
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 180.217.142.185
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/java/M.1485946899.A.C8A.html
※ 编辑: uopsdod (180.217.142.185), 02/01/2017 19:01:57
1F:推 PTTTTTTTT: 可能是因为不像array一样需要马上allocate memory ? 02/01 22:53
2F:推 cowbaying: 没错 主要就是因为他是动态阵列 长度依实际操作增减 02/01 23:20
3F:→ cowbaying: 不像一般的阵列 宣告时长度就固定了 02/01 23:21
4F:→ cowbaying: 原PO可能想成他是不是有什麽特殊的演算法来节省空间吧 02/01 23:22
5F:推 adrianshum: 个人认为BD 才是正确答案。同样大小的ArrayList 比Arr 02/02 10:28
6F:→ adrianshum: ay 多用memory. 还有reallocation 产生的garbage. 只 02/02 10:28
7F:→ adrianshum: 有特定情况下用array list 才会减少memory footprint. 02/02 10:28
8F:→ cowbaying: B? 02/02 12:52
9F:→ uopsdod: 如果是以1楼和2楼的角度来想,那我可以理解。 02/02 21:08
10F:→ uopsdod: 但我原本也比较倾向是adr大的想法。可能是题目问法问题?! 02/02 21:08
11F:→ uopsdod: B的话解答是说这叙述没错,只是并不是'优点' 02/02 21:09
※ 编辑: uopsdod (1.200.209.30), 02/02/2017 21:24:51
※ 编辑: uopsdod (1.200.209.30), 02/02/2017 21:25:10
12F:→ adrianshum: 当你要用到collection 那就是优点了 02/03 15:13
13F:→ Kennyq: B也不能说是错,所以我觉得认证考试钻牛角尖就是这样 02/03 15:38
14F:→ Kennyq: 这题重点是在动态阵列不需一开始宣告长度固定,记这就可以 02/03 15:40
15F:→ Kennyq: 记忆体运行算底层了吧!你也只是呼叫人家写好的api来做事 02/03 15:41
16F:→ Kennyq: SCJP钻那麽细干麻...考完就是32K等级... 02/03 15:42
17F:→ Kennyq: 这的要深究记忆体,写组合语言还比较接近 02/03 15:43
18F:→ Kennyq: 真的要深究记忆体,写组合语言还比较接近 02/03 15:44
19F:→ Kennyq: 以前做网管考微软证照,实际用到的根本很少,钻牛角尖而已 02/03 15:45
20F:→ Kennyq: 连讲师都说他没看过考古题就去考,一样卜街 02/03 15:46
21F:→ Kennyq: 就代表考试跟业界是有很大差距的 02/03 15:46
22F:→ Kennyq: 像这题的B不就有争议,问题是认证考试一堆这种烂题目 02/03 15:48
23F:→ Kennyq: 我还看过考题考你少一个{的,这也太白痴了 02/03 15:52
24F:→ Kennyq: 你用eclipse有auto trigger,根本不会有少}的问题 02/03 15:53
25F:→ Kennyq: 也难怪公司找人,程式没网管那麽硬性要求证照 02/03 15:55
26F:→ Kennyq: 你觉得口试面试官会问你少一个}的白痴问题吗? 02/03 15:55
27F:→ jej: 这题应该是讨论System.arrayCopy的问题吧@@ 02/03 16:15