У меня есть следующий метод
val dateFormat = SimpleDateFormat("yyyy-MM-dd")
fun parseBirthdateLines(paragraph: String): List<Pair<Date, String>> {
val lines = paragraph.split("\n")
return lines.map { l -> Pair(dateFormat.parse(l.split(" ")[0]), l.split(" ")[1]) }
}
, где l.split(" ")
вызывается дважды.
Как писать умнее в стиле функционального программирования?
PS 1: Мне интересно решение с fold
, если возможно
PS 2: для удобства чтения оригинальная версия была записана как
fun parseBirthdateLines(paragraph: String): List<Pair<Date, String>> {
val lines = paragraph.split("\n")
var results = mutableListOf<Pair<Date, String>>()
for (line in lines) {
val content = line.split(" ")
val date: Date = dateFormat.parse(content[0])
val firstName = content[1]
results.add(Pair(date,firstName))
}
return results
}