- Are better for collections of data that won’t be added to or removed from during runtime.
- Can be multi-dimensional.
- Are a method to group and organize data.
- are collections whose elements are accessed through an “index”: An integer, starting from zero, which corresponds to the element’s order in the array.
- Use statically-allocated memory, less suited to runtime modification.
- Store their data in a continuous memory allocation.
- Can be added to or removed from easily during runtime.
- Are a method to group and organize data that allows for more modification operations to the data and itself.
- are collections whose elements can be accessed through an “index”: An integer, starting from zero, which corresponds to the element’s order in the array.
- Use dynamically assigned memory, allotted on request, significantly limiting or negating memory waste.
- Store their data in non-continuous memory allocations, where bits of data are scattered around memory, while maintaining links together.
This is just a basic intro into C# Lists and Arrays, but I find the easiest way to think of them is like this:
That will be enough to get through most situations requiring a collection of data, but for more advanced projects and usages, you’d need to understand a little more.