Differences between an array and any collection fr

2020-05-21 05:55发布

问题:

As the title say I am looking into the "Differences between an array and any collection from the java Collection framework".

Thought it's high level enough to provide some good understanding to a few (or many) of us who know too little about this or need to think far too long to come up with a interesting answer

So far, I have come up with:

  1. Collection framework classes either use array underneath or use more complex data structure. When an array is simply...an array
  2. Array does not have methods (no API) such as the ones provided by Collection classes.

Please correct me if these were incorrect assumptions, and of course add your own answers

回答1:

They are virtually unreleated, except to say they both store a group of values.

From a capability perspective, while both can store references to objects:

  • Arrays can store primitives
  • Collections can not store primitives (although they can store the primitive wrapper classes, such as Integer etc)

One important difference, commonly not understood by programmers new to java, is one of usability and convenience, especially given that Collections automatically expand in size when needed:

  • Arrays - Avoid using them unless you have to
  • Collections - Use them in preference to arrays

Arrays are ultimately the only way of storing a group of primitives/references in one object, but they are the most basic option. Although arrays may give you some speed advantages, unless you need super-fast code, Collections are preferred because they have so much convenience.



回答2:

There are 5 differences between Array and Collection as given below :

  1. Arrays are fixed in size, whereas some Collections are grow-able in nature.

  2. Arrays store homogeneous data. Collections store both homogeneous as well as heterogeneous data.

  3. In Arrays, there are no underlining data structures, whereas Collections have underlining data structures.

  4. Arrays are recommended for performance, whereas Collections are not.

  5. Arrays use more memory space as compared to Collections.



回答3:

  1. Arrays are fixed in length where as collections are growable in nature.
  2. Arrays can store homogeneous elements whereas collections can store both.
  3. If you know the size in advance, go for Arrays
  4. Performance point of view, better to go with Arrays
  5. Arrays does not have any ready made methods whereas Collections have ready made methods.


回答4:

6 difference between Arrays and Collections are following:

  1. Arrays are fixed in size but Collections are dynamic in size.
  2. With respect to memory arrays are not good to use but with respect to memory Collections are better to use.
  3. With respect to performance its better to use arrays but with respect to performance collection are not good to use.
  4. Arrays can hold only homogeneous elements but collections can hold both homogeneous and heterogeneous elements
  5. Arrays don't have ready made methods but collections have ready made data structures and methods.
  6. Arrays can hold both primitives and wrapper objects but collections can hold only objects.