Как работает этот код?
У .filter контракт - оставить в стриме только те элементы, по которым вернётся true. fieldNames::remove удаляет элемент из списка fieldNames. Если элемент присутствовал - возвращается true, в противном случае false. Т.о. в стриме остаются только те элементы, которые присутствовали и были удалены из fieldNames.
.collect(Collectors.toList()) собирает стрим в обычный лист.
в .filter(fieldNames::remove) fieldNames::remove это придикат
Соответсвенно, отфильтровать по придикату.

Если в PRE_SORTED_FIELDS_LIST есть "A" и "B", а в fieldNames только  "B", 
то в результате будет только "B", а в fieldNames будет пусто, ибо remove пройдёт и придикат даст true.