()
| 55 | } |
| 56 | |
| 57 | public T add() { |
| 58 | T element = mItems[mEnd]; |
| 59 | if (element == null) { |
| 60 | element = createInstance(); |
| 61 | mItems[mEnd] = element; |
| 62 | } |
| 63 | mEnd = getNextIndex(mEnd); |
| 64 | if (mBegin == mEnd) { |
| 65 | mBegin = getNextIndex(mBegin); |
| 66 | } |
| 67 | return element; |
| 68 | } |
| 69 | |
| 70 | protected abstract T createInstance(); |
| 71 | } |