Question

I have a method that returns a List. (getListMethod)

Is there functional difference between?

ArrayList myList = (ArrayList) getListMethod();

and

ArrayList myList = new ArrayList(getListMethod());
Était-ce utile?

La solution

Yes, there is a difference.

ArrayList myList = (ArrayList) getListMethod();  

creates a new reference to the same ArrayList, while

ArrayList myList = new ArrayList(getListMethod());  

copies the elements of the old list to a new one.

I am assuming here that you know that getListMethod() really returns an ArrayList, otherwise you might run into other problems with the first variant as well.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top