This is not the usual logic for setter. Even for converting setter (from array to list). Why reusing the same ArrayList instead of simple assignment to the new one?