Так что прежде, чем было это:Преобразование булевый BitSet в Java
public static final boolean opaqueCubeLookup = new boolean[4096];
Но я узнал, что BitSet намного лучше в управлении памятью, поэтому я изменил его к этому:
public static final BitSet opaqueCubeLookup = new BitSet(4096);
I также имел этот код:
opaqueCubeLookup[par1] = this.isOpaqueCube();
Но после переезда в BitSet у меня есть проблема, я получаю эту ошибку:
The type of the expression must be an array type but it resolved to BitSet
Как это исправить? Любая помощь приветствуется!
Обратите внимание, что в соответствии с [это] (http://stackoverflow.com/a/605451/2071828) SO ответить 'BitSet' значительно медленнее (4 раза). Качели и карусели? –
@ bmorris591 Является ли 4096 объектов считающимися маленькими, потому что после некоторого тестирования он, кажется, имеет 2x меньше FPS, но занимает меньше процессора и памяти (я имею в виду, что оптимизированный кажется медленнее) – tambre
В связанной нити контрольный пример выполнен с 1 миллионом пунктов, сообщение говорит, что производительность равна, когда это достигает 4 миллионов. Я думаю, это означает, что 4096 (очень) маленький ... –