Вместо того, чтобы читать последние 8 частей вашего ArrayList
, ваш цикл for
читает first 8.
Что вы вместо этого хотите сделать, это начать с size-8-й элемент и затем цикл до последнего элемента, поэтому ваш код должен выглядеть примерно так:
int size = chatList.size();
int start = (size > 8) ? size - 8 : 0;
for(int j2 = start; j2 < size; j2++) {
...
}
РЕДАКТИРОВАТЬ: Забыл о случае, когда size
может быть меньше 8. Еслиэто так, то вы должны начать с элемента 0.