public boolean get(final int findIndex) { if (findIndex == -1) { return true; } Integer findResult = ref.get(findIndex); return checkInteger(findIndex, findResult); }
public boolean checkChangeId() { ChangedValue changedValue = lastChangeValue.get(); if (changedValue == null) { return true; } Integer findResult = ref.get(changedValue.index); return checkInteger(changedValue.value, findResult); }
public boolean changeId(int index, int value) { if (index < arraySize) { ref.set(index, value); lastChangeValue.set(new ChangedValue(index, value)); // maxIndex.updateMax(nextId); // updateIndex.offer(nextId); // logger.debug("nextId:{}", nextId); return true; } else { return false; } }
public boolean nextId() { int nextId = this.nextId.getAndIncrement(); if (nextId < arraySize) { ref.set(nextId, nextId); afterLast.set(nextId); // maxIndex.updateMax(nextId); // updateIndex.offer(nextId); // logger.debug("nextId:{}", nextId); return true; } else { return false; } }