EPISODE · Jul 8, 2019 · 21 MIN
168: Learning Kotlin: Lambda Expressions Part 2
from Fragmented - AI Developer Podcast · host Spec
In this episode, Donn continues his talks about Kotlin Lambda Expressions. He explains how you can use lambda expressions as function parameters and as return types for functions. This is a very dense episode - if you get lost look at the code snippets below or view on them on fragmentedpodcast.com class LogReader { fun processFile(file: File, processLine: (String) -> Unit = {}) { file.forEachLine { println("Number of Chars: ${it.length}") processLine(it) println("Line Done Processing") } } fun processFileWithHandlers(file: File, logHandler: LogHandler) { file.forEachLine { println("Start of Processing") logHandler.handleLine().forEach { handler -> handler(it) } println("Line Done Processing") } } } interface LogHandler { fun handleLine(): List<(String) -> Unit> } val reader = LogReader() val textFile = File("/Users/donnfelker/scratch/lorem.txt") // Process with single lambda reader.processFile(textFile, { println("First 10 Chars: ${it.substring(0..9)}") }) val logHandler = object : LogHandler { override fun handleLine(): List<(String) -> Unit> { return listOf<(String) -> Unit>( { line -> println("${line.substring(0, 1)}") }, { line -> println("${line.substring(2, 4)}") }, { line -> println("${line.substring(5, 10)}") } ) } } // Process with multipe handlers via the logHandler reader.processFileWithHandlers(textFile, logHandler) Sponsors 🙏 sentry.io - Your code is broken. Let’s fix it together - https://sentry.io/for/android/ Contact Discord chat or @fragmentedcast or our Youtube channel @donnfelker and donnfelker (on Instagram) @kaushikgopal and kaushikgopal (on Instagram)
Embed this episode
What this episode covers
In this episode, Donn continues his talks about Kotlin Lambda Expressions. He explains how you can use lambda expressions as function parameters and as return types for functions.
NOW PLAYING
168: Learning Kotlin: Lambda Expressions Part 2
No transcript for this episode yet
Similar Episodes
No similar episodes found.
Similar Podcasts
No similar podcasts found.