Почему в Java `BitSet` нет функций shiftLeft и shiftRight?

Есть ли какая-то конкретная причина, по которой они отсутствуют?

Они действительно существуют в BigInteger , но из-за неизменного паттерна проектирования BigInteger ] они обычно ужасно медленные. BitSet намного лучше, потому что он изменяемый, но мне очень не хватает функций shift ( и >>> для ] long с). Для BitSet также может быть полезен сдвиг на месте, а также циклическое вращение.

Я видел ответ на Сдвиг Java BitSet (с использованием get (off, len) для смещения; однако это требует копирования).

Не поймите меня неправильно. Я знаю, где сообщать об ошибках. Мне просто интересно, была ли конкретная причина , чтобы их опустить, например какой-то шаблон дизайна или такая концепция. В частности, поскольку они включены в BigInteger .

13
задан Community 23 May 2017 в 12:09
поделиться