2015-09-18 3 views
1

У меня есть ArrayList, из которого мне нужно удалить элемент.Удаление элемента из ArrayList, где строка элемента содержит определенную строку

я получаю выход, как это:

ArrayList: [2062253<:>2, 2062254<:>242.0, 2062252<:>100] 

я должен был быть в состоянии удалить 2062254<:>242.0. Я мог бы просто удалить элемент с .remove("2062254<:>242.0"), но дело в том, что строка всегда изменяется. Единственная часть строки, которая не изменяется, - 54<:>.

Есть ли способ удалить элемент из arraylist, используя что-то вроде: .contains("54<:>")?

Может быть, я мог бы сделать, если список проверки этого:

if (calList.contains("54<:>")) { 
    //How can I get the index ID here? Remove this index from the arraylist 
} 

ответ

3

Вы должны пройти через список и проверить каждый элемент:

Iterator<String> it = calList.iterator(); 
while (it.hasNext()) { 
    if (it.next().contains("54<:>")) { 
    it.remove(); 
    // Add break; here if you want to remove just the first match. 
    } 
} 
+0

Это идеальный вариант, спасибо очень много – mhorgan

Смежные вопросы