﻿# V6066\. Passing objects of incompatible types to the method of collection\.

Анализатор обнаружил потенциальную ошибку, связанную с вызовом метода коллекции, в который передали объект, тип которого не совпадает с типом коллекции\. Анализатор выдает предупреждения на такие функции как remove, contains, removeAll, containsAll, retainAll и т\.д\.

Давайте рассмотрим пример с ошибочным использованием метода 'remove':

```cpp
List<String> list = ...;
Integer index = ...;
...
list.remove(index);
```

Здесь хотели удалить объект из списка по индексу, но не учли, что индекс не примитивный целый тип, а объект типа 'Integer'\. Будет использоваться перегруженный метод 'remove', который ожидает на вход объект, а не 'int'\. Объекты 'Integer' и 'String' несовместимы, и поэтому использование метода будет ошибочным\.

Если нет возможности изменить тип переменной "index", то можно исправить код следующим образом:

```cpp
List<String> list = ...;
Integer index = ...;
...
list.remove(index.intValue());
```