void (int pagesToCollect, int totalPagesCount) { if (pagesToCollect <= 0) { throw new IllegalArgumentException("pagesToCollect(=" + pagesToCollect + ") must be > 0"); } if (totalPagesCount < 0) { throw new IllegalArgumentException("totalPagesCount(=" + totalPagesCount + ") must be >= 0"); } this.maxPagesToCollect = Math.max( pagesToCollect, totalPagesCount * lowUsefulnessThresholdEstimator.percentileToEstimate() / 100 + 1 ); int listsSizeEstimation = Math.max(pagesToCollect / 2, 32); pagesForReclaimDirty = new ArrayList<>(listsSizeEstimation); pagesForReclaimNonDirty = new ArrayList<>(listsSizeEstimation); }