Hello. Your question is clear. The array list has a reference to the hierarchy object. Therefore, if the hierarchy object is deleted, the array list is referencing nothing. An array list does not actually hold an object, but instead only has a reference.
Sometimes, it is better to reference prefabs in your project folder. Then your scene objects will not affect your array list (since you cannot delete a prefab during game play).