I want to know the comparison between List and Set in terms of performance,memory allocation and usability.
If i don’t have any requirement of keeping the uniqueness in the list of objects, neither required the insertion order to be maintained, Can I use ArrayList and SortedSet/HashSet interchangeably?
Will it be good to directly use Collections class instead of even list/set?
P.S. I also don’t have any need for list or set specific functions provided by java.
I am using List/Set instead of Array only because they can dynamically grow without extra programming efforts.
If you don’t care about the ordering, and don’t delete elements, then it really boils down to whether you need to find elements in this data structure, and how fast you need those lookups to be.
Finding an element by value in a
HashSetisO(1). In anArrayList, it’sO(n).If you are only using the container to store a bunch of unique objects, and iterate over them at the end (in any order), then arguably
ArrayListis a better choice since it’s simpler and more economical.