Why would you want to choose an Array object over an ArrayList object? Why would you choose an ArrayList object over an Array object?
An Array object has a set size, whereas an ArrayList object can grow as items are added to it.
The Array class internally allocates contiguous blocks of memory. Does the stack and queue do the same? Why or why not?
No, they don't. Stacks and queues are implemented more like linked lists than arrays. You cannot index a Stack or Queue object in the same way you can index an Array object.
What happens when you add a hash table element that has the same key to an element already in the hash table?
You will receive an ArgumentException.