При таком коде я могу нормально удалять элемент list.remove(0);
String[] str = {"q","w","e"};
List<String> list = new ArrayList();
for (int i = 0 ; i < words.length; i++){
   list.add(str[i]);
}
А вот при таком коде при попытке удаления list.remove(0); вылетает исключение UnsupportedOperationException.:
String[] str = {"q","w","e"};
List<String> list = new ArrayList();
list = Arrays.asList(str);
Размер и содержание массива list в обоих случаях одинаковое, расскажите, чем они отличаются в этих вариантах.