Class ProtobufArrayList<E>

  • All Implemented Interfaces:
    Internal.ProtobufList<E>, java.lang.Iterable<E>, java.util.Collection<E>, java.util.List<E>, java.util.RandomAccess

    final class ProtobufArrayList<E>
    extends AbstractProtobufList<E>
    implements java.util.RandomAccess
    Implements Internal.ProtobufList for non-primitive and String types.
    • Field Detail

      • EMPTY_ARRAY

        private static final java.lang.Object[] EMPTY_ARRAY
      • array

        private E[] array
      • size

        private int size
    • Constructor Detail

      • ProtobufArrayList

        ProtobufArrayList()
      • ProtobufArrayList

        private ProtobufArrayList​(E[] array,
                                  int size,
                                  boolean isMutable)
    • Method Detail

      • add

        public boolean add​(E element)
        Specified by:
        add in interface java.util.Collection<E>
        Specified by:
        add in interface java.util.List<E>
        Overrides:
        add in class AbstractProtobufList<E>
      • growSize

        private static int growSize​(int previousSize)
      • add

        public void add​(int index,
                        E element)
        Specified by:
        add in interface java.util.List<E>
        Overrides:
        add in class AbstractProtobufList<E>
      • get

        public E get​(int index)
        Specified by:
        get in interface java.util.List<E>
        Specified by:
        get in class java.util.AbstractList<E>
      • remove

        public E remove​(int index)
        Specified by:
        remove in interface java.util.List<E>
        Overrides:
        remove in class AbstractProtobufList<E>
      • set

        public E set​(int index,
                     E element)
        Specified by:
        set in interface java.util.List<E>
        Overrides:
        set in class AbstractProtobufList<E>
      • size

        public int size()
        Specified by:
        size in interface java.util.Collection<E>
        Specified by:
        size in interface java.util.List<E>
        Specified by:
        size in class java.util.AbstractCollection<E>
      • ensureCapacity

        void ensureCapacity​(int minCapacity)
        Ensures the backing array can fit at least minCapacity elements.
      • createArray

        private static <E> E[] createArray​(int capacity)
      • ensureIndexInRange

        private void ensureIndexInRange​(int index)
      • makeOutOfBoundsExceptionMessage

        private java.lang.String makeOutOfBoundsExceptionMessage​(int index)