Подскажите, пожалуйста, почему при работе с массивами пишим for(... ; i<list.length;...), а с ArrayList - i<list.size(); те в одном случае используется переменная в другом метод?