значения перезаписываются, поэтому следуйте примеру user370305, но есть некоторые проблемы, которые все еще существуют, проблема связана с тем, что вы выбираете значения предпочтений, так как String msg = pref.getString (r.nextInt (i) + "", "никто");за пределами внутреннего цикла for, поэтому я предполагаю, что i также объявлен вне цикла for, который нигде не изменяется, поэтому внешний цикл будет показывать только значение i, которое объявлено вне предоставленного вами блока, что, я думаю,это поле класса