РЕДАКТИРОВАТЬ: мой оригинальный ответ ниже. Приведенное ниже значение не имеет отношения к в этом случае, так как буферизованный считыватель упаковывает StringReader, который упаковывает String. Таким образом, буферизация не выполняется, и BufferedReader представляется избыточным. Вы могли бы аргументировать использование лучших / последовательных методов, но это было бы довольно незначительно.
Возможно, результат копирования / вставки или, возможно, слишком большой рефактор, управляемый IDE!
BufferedReader попытается прочитать более оптимальным способом.
То есть, он будет считывать большие порции данных за один раз (в настраиваемом количестве), а затем делать доступными по мере необходимости. Это уменьшит количество операций чтения с диска (и т. Д.) За счет некоторого использования памяти.
Цитата из Javadoc:
В общем, каждый запрос на чтение сделан из
Читатель вызывает соответствующее чтение
просьба сделать из базового
символьный или байтовый поток. это
поэтому желательно обернуть
BufferedReader вокруг любого Reader, чей
Операции read () могут быть дорогостоящими, например,
как FileReaders и InputStreamReaders