From 657de54b482d0ab7ff93ee58ee73fa6710cc04c5 Mon Sep 17 00:00:00 2001 From: Brett Wooldridge Date: Tue, 27 Dec 2016 10:55:49 -0600 Subject: [PATCH] Change to bound check instead of exception trap --- src/main/java/com/zaxxer/hikari/util/FastList.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zaxxer/hikari/util/FastList.java b/src/main/java/com/zaxxer/hikari/util/FastList.java index 302ed7c4..02a51887 100644 --- a/src/main/java/com/zaxxer/hikari/util/FastList.java +++ b/src/main/java/com/zaxxer/hikari/util/FastList.java @@ -74,10 +74,10 @@ public final class FastList implements List, RandomAccess, Serializable @Override public boolean add(T element) { - try { + if (size < elementData.length) { elementData[size++] = element; } - catch (ArrayIndexOutOfBoundsException e) { + else { // overflow-conscious code final int oldCapacity = elementData.length; final int newCapacity = oldCapacity << 1; @@ -332,30 +332,35 @@ public final class FastList implements List, RandomAccess, Serializable } /** {@inheritDoc} */ + @Override public void forEach(Consumer action) { throw new UnsupportedOperationException(); } /** {@inheritDoc} */ + @Override public Spliterator spliterator() { throw new UnsupportedOperationException(); } /** {@inheritDoc} */ + @Override public boolean removeIf(Predicate filter) { throw new UnsupportedOperationException(); } /** {@inheritDoc} */ + @Override public void replaceAll(UnaryOperator operator) { throw new UnsupportedOperationException(); } /** {@inheritDoc} */ + @Override public void sort(Comparator c) { throw new UnsupportedOperationException();