Learn Kotlin,
step by step.
Clear explanations, real code examples and sample output — from basics to coroutines, OOP and JVM interop.
214+
Tutorials
7
Tracks
39
Topics
JVM
Platform
Popular Tutorials
If Statement in Kotlin
If Statement in Kotlin: a complete example program with source code and sample output, explained step by step.
async Function in Kotlin
async starts coroutine that returns Deferred result. A Kotlin example with source code and sample output.
Comments in Kotlin
A Kotlin example program demonstrating Comments, complete with the source code and expected sample output.
Coroutine Cancellation in Kotlin
Coroutines can be cancelled cooperatively when they are no longer needed. A Kotlin example with source code and sample output.
Coroutine Introduction in Kotlin
Coroutines provide lightweight concurrency for asynchronous code. A Kotlin example with source code and sample output.
Dispatcher Main in Kotlin
Dispatchers.Main runs coroutines on UI thread in Android/UI apps. A Kotlin example with source code and sample output.
Higher Order Function Basics in Kotlin
Higher-order function takes functions as parameters or returns a function. A Kotlin example with source code and sample output.
Calling Java from Kotlin
Kotlin on JVM can use existing Java classes directly. A Kotlin example with source code and sample output.
Learning track
Kotlin Basics
Everything you need to start writing Kotlin - from your first program to functions, with examples and output for every concept.
Basic Programs
Get started with Kotlin: your first program, variables, and comments.
4 tutorialsKotlin Data Types
Explore Int, Float, Double, Char, Boolean, String and more, with type conversion.
11 tutorialsKotlin Operators
Arithmetic, relational, logical, assignment and Kotlin's special operators.
15 tutorialsConditional Statements
Control program flow with if, when, break, continue and return.
4 tutorialsKotlin Input and Output
Read input and print output in Kotlin, including the Scanner class.
5 tutorialsLooping & Controls
Repeat work with for, while, do-while and the repeat function.
6 tutorialsKotlin Functions
Define functions with default, named and vararg parameters, single-expression, local, tailrec and infix functions.
10 tutorialsLearning track
Kotlin Intermediate
Move beyond basics with null safety, strings, arrays, collections, packages and exception handling.
Null Safety
Nullable types, safe casts, let, lateinit and null handling in Kotlin.
7 tutorialsKotlin Strings
String basics, templates, comparison, substring and raw strings.
6 tutorialsKotlin Arrays
Declare, initialize, access and iterate arrays in Kotlin.
5 tutorialsCollections Intro
Lists, sets, maps and common collection operations.
6 tutorialsPackages & Imports
Organize code with packages, imports and visibility modifiers.
5 tutorialsException Handling
try-catch, finally, throw, custom exceptions and try expressions.
6 tutorialsType Features
Type aliases, destructuring declarations and related Kotlin type syntax.
2 tutorialsLearning track
Object Oriented Kotlin
Classes, inheritance, interfaces, data classes, objects and sealed classes with examples.
Kotlin Classes
Declare classes, properties, constructors and init blocks.
8 tutorialsInheritance
Open classes, overriding, abstract classes and inheritance rules.
5 tutorialsInterfaces
Define and implement interfaces, functional interfaces and properties.
5 tutorialsData Classes
Data class declaration, copy, destructuring and equals/hashCode.
4 tutorialsObjects & Enums
Object declarations, companion objects, expressions and enum classes.
5 tutorialsSealed Classes
Sealed classes, when expressions and restricted type hierarchies.
4 tutorialsLearning track
Functional Kotlin
Lambdas, higher-order functions, scope functions, delegates and generics.
Lambda Expressions
Lambda syntax, parameters, return values and anonymous functions.
5 tutorialsHigher Order Functions
Functions as parameters, inline functions and return types.
5 tutorialsScope Functions
let, run, with, apply and also scope functions explained.
5 tutorialsDelegates
Property delegates, lazy, observable and class delegation.
5 tutorialsGenerics
Generic functions, classes, constraints, variance and star projection.
5 tutorialsExtension Functions
Add new behaviour to existing types with Kotlin extension functions and properties.
1 tutorialsLearning track
Standard Library
Lists, maps, sets, sequences, ranges, regex and file I/O in Kotlin.
List, Map & Set
Immutable and mutable collection operations, filtering and sorting.
6 tutorialsSequences
Lazy sequences, operations and when to use sequences vs lists.
5 tutorialsRanges
Range expressions, until, downTo and step in Kotlin.
4 tutorialsRegular Expressions
Regex matching, find, replace and common patterns in Kotlin.
5 tutorialsFile I/O
Read and write files, lines and path operations in Kotlin.
6 tutorialsLearning track
Kotlin Coroutines
Asynchronous programming with coroutines, dispatchers, async and Flow.
Coroutine Basics
Introduction, suspend functions, launch, runBlocking and coroutine scope.
6 tutorialsDispatchers
Main, IO, Default dispatchers and withContext for thread switching.
5 tutorialsAsync & Await
async builder, await, parallel work and exception handling.
5 tutorialsKotlin Flow
Cold flows, operators, StateFlow and SharedFlow basics.
6 tutorialsAdvanced Coroutines
Coroutine cancellation, channels and producer-consumer patterns.
2 tutorialsLearning track
JVM & Interop
Java interoperability, annotations and reflection on the JVM.
Network
More learning sites
Explore tutorials on the main hub and dedicated language subdomains.