Не существует эффективного способа найти все записи Map
, имеющие заданное значение, и удалить их.Чтобы сделать это, вам придется перебрать все записи.
Однако вам не нужно это делать.Просто избегайте помещать их в Map
.Вместо того, чтобы помещать символы первого String
со значением false
в Map
, поместите их в отдельный Set
:
Map<Character, Boolean> store = new TreeMap<>();
Set<Character> set = new TreeSet<>();
for(int i=0;i<str[0].length();i++)
{
set.add(str[0].charAt(i));
}
for(int i=1;i<str.length;i++)
{
for(int j=0;j<str[i].length();j++)
{
if(set.contains(str[i].charAt(j)))
{
store.put(str[i].charAt(i), true);
}
}
}