Android development - using an ArrayList <String> against an array of strings with an ArrayAdapter
I'm new to Android development, and I have a question about a passage I read in Commonsware's A Busy Coder Guide for Android Development. There is an example when he creates a class that extends ListActivity and shows the ability to remove and remove from the list through context menus. Before setting up an ArrayAdapter with a string source for a list, the text says to convert the String array to an ArrayList type because "we want to be able to change the contents of the list on the fly," and it's a lot easier if you use an ArrayList rather than a regular String array "
I understand this concept if we use an ArrayList or String array to directly control the list, but why does it matter if we use the ArrayAdapter.add / insert / remove methods? When an ArrayAdapter is created (and from what I understand from this .java file), it turns the source data into a List object, whether it be from an array or an ArrayList.
I tried to use a regular array when creating the adapter, and I got an error (as expected from the text), but I don’t understand why. What is the difference between creating an ArrayAdapter with a string array vs ArrayList ... would it turn it into the same List object? Is there any kind of binding to the source source variable when trying to add / insert / delete through the adapter?
Sorry for the long question, but thanks in advance.