С помощью Java 8 вы можете использовать новый removeIf
метод . Применимо к вашему примеру:
Collection coll = new ArrayList();
//populate
coll.removeIf(i -> i.intValue() == 5);
В биоинформатике при выравнивании двух последовательностей DNA, у Вас могла бы быть модель, которая имеет другую стоимость на основе того, если замена является переходом или трансверсией. Это точно, что Вы хотите, но вместо 4x4 матрица, Вы хотите 40x40 матрица или некоторые, смеете, я говорю функцию расстояния? Таким образом, стоимость замены от матрицы/функции, не константы.
ПРОТЕСТ: убедитесь, что удаления и вставки взвешиваются правильно, хотя, таким образом, они не по принятому как минимум. Вы закончите со строкой insertions/deletions/no-change-substitution символов.
новая функция, которую Вы пытаетесь минимизировать, была бы:
d[i, j] := minimum(
d[i-1, j] + del_cost,
d[i, j-1] + ins_cost,
d[i-1, j-1] + keyboard_distance( s[i], t[j] )
)