Add an optional parameter to joinToString() and joinTo() functions: lambda function which maps the element to string.
#KT-5468 Fixed
This commit is contained in:
@@ -267,4 +267,10 @@ abstract class IterableTests<T : Iterable<String>>(val data: T, val empty: T) {
|
||||
assertEquals(6, reduced.length())
|
||||
assertTrue(reduced == "foobar" || reduced == "barfoo")
|
||||
}
|
||||
|
||||
Test
|
||||
fun mapAndJoinToString() {
|
||||
val result = data.joinToString(separator = "-") { it.toUpperCase() }
|
||||
assertEquals("FOO-BAR", result)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,6 +73,10 @@ public class SequenceTest {
|
||||
}
|
||||
}
|
||||
|
||||
test fun mapAndJoinToString() {
|
||||
assertEquals("3, 5, 8", fibonacci().withIndex().filter { it.index > 3 }.take(3).joinToString { it.value.toString() })
|
||||
}
|
||||
|
||||
test fun withIndex() {
|
||||
val data = sequenceOf("foo", "bar")
|
||||
val indexed = data.withIndex().map { it.value.substring(0..it.index) }.toList()
|
||||
|
||||
Reference in New Issue
Block a user