Java arrayList vs. C++ vector



可能重复:
什么';s是Java的C++版本';s阵列列表

我在读一本名为《破解编码面试》的书,大部分(全部?)代码都是Java代码,arrayList被大量使用。在面试中,如果语言是C++,那么使用向量而不是arrayList是否可以接受?我之所以这么问,是因为我甚至还没有见过一个C++代码的例子来处理使用向量的类似问题,但我不确定是否有显著的差异。

在C中也有等价物吗?

答案有两个:首先,你不能像那样比较C++和Java之间的实用程序类-不同的语言有不同的文化、命名约定等。如果C++库中有一个Vector类,那么除了名称之外,它与Java中的任何Vector类都没有任何联系。

其次,Java中的Vector类在实践中是不受欢迎的,我不鼓励你使用它。事实上,忘记它吧:)List和ArrayList的组合是最好的选择。尽可能使用接口,比如:

List myList = new ArrayList();

示例故意缺少泛型类型。

忽略同步,Vector和ArrayList之间的主要区别在于Vector是一个可调整大小的数组(类似于C++STL Vector),ArrayList是一个恰好由数组支持的列表。

数组列表与向量

在后端,它们都是数组,上面都有帮助程序员的函数。现在,它们从根本上有多大不同?

请在此处查看:http://www.reddit.com/r/learnprogramming/comments/l6o65/arraylist_java_vs_vectors_c/

最新更新