Документация для ListBuffers предлагает два метода, которые конвертируют ListBuffer в список: result
и toList
.Scala - toList против результата в ListBuffer?
result
говорит, что он создает коллекцию из добавленных элементов и что содержимое не определено впоследствии.
toList
, похоже, вместо этого создает постоянную временную ленивую копию содержимого буфера (и предположительно оставляет его неповрежденным).
Если toList
- постоянное время, когда мы когда-нибудь предпочли бы result
? И также я правильно понимаю, что toList
сохранит содержимое буфера?
И если мы посмотрим на источник (https://github.com/scala/scala/blob/v2.11.4/src/library/scala/collection/mutable/ListBuffer.scala#L1), мы увидим 'def result : List [A] = toList' :) –
@Paul - вы должны опубликовать это как ответ, поэтому вопрос можно закрыть. –
Я не уверен, что это ответ. Это артефакт реализации. Возможно, будущая версия решит сделать это по-другому. –