commit
						0811b20096
					
				| @ -5,6 +5,15 @@ class Country(val name : String, val cities : List<City>) | |||||||
| 
 | 
 | ||||||
| class City(val name : String, val streets : List<String>) | class City(val name : String, val streets : List<String>) | ||||||
| 
 | 
 | ||||||
|  | fun City.getStreetsWithCityName() : List<String> { | ||||||
|  |     return streets.map { "$name, $it" }.toList() | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | fun Country.getCitiesWithCountryName() : List<String> { | ||||||
|  |     return cities.flatMap { it.getStreetsWithCityName() } | ||||||
|  |             .map { "$name, $it" } | ||||||
|  | } | ||||||
|  | 
 | ||||||
| class World { | class World { | ||||||
| 
 | 
 | ||||||
|     private val streetsOfAmsterdam = listOf("Herengracht", "Prinsengracht") |     private val streetsOfAmsterdam = listOf("Herengracht", "Prinsengracht") | ||||||
| @ -45,6 +54,19 @@ class World { | |||||||
|             } |             } | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  | 
 | ||||||
|  |     fun allStreetsFlatMap() { | ||||||
|  | 
 | ||||||
|  |         countries.flatMap { it.cities} | ||||||
|  |                 .flatMap { it.streets} | ||||||
|  |                 .forEach { println(it) } | ||||||
|  |     } | ||||||
|  | 
 | ||||||
|  |     fun allFlatMapTable() { | ||||||
|  | 
 | ||||||
|  |         countries.flatMap { it.getCitiesWithCountryName() } | ||||||
|  |                 .forEach { println(it) } | ||||||
|  |     } | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| fun main(args : Array<String>) { | fun main(args : Array<String>) { | ||||||
| @ -56,6 +78,10 @@ fun main(args : Array<String>) { | |||||||
|     world.allNested() |     world.allNested() | ||||||
| 
 | 
 | ||||||
|     world.allTable() |     world.allTable() | ||||||
|  | 
 | ||||||
|  |     world.allStreetsFlatMap() | ||||||
|  | 
 | ||||||
|  |     world.allFlatMapTable() | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user