🚀 Kotlin Programs
105 Essential Programs from Beginner to Advanced
Your Progress
Filter by Category
Filter by Level
Hello World
#1Print Hello World
Add Numbers
#2Add two variables
String Interpolation
#3Print variables inside string
Even or Odd
#4Check even or odd
Largest of Two
#5Find largest number
Factorial
#6Find factorial of an integer
Fibonacci
#7Print Fibonacci series
Reverse String
#8Reverse a string
Palindrome String
#9Check palindrome
Sum of Array
#10Find sum of array elements
Count Vowels
#11Count vowels in a string
Leap Year
#12Check if leap year
When Statement
#13Using when for grades
Random Number
#14Generate random Int
Map Basics
#15Key value pairs
Null Safety
#16Safely unwrap value
Function Basics
#17Simple function
Set Basics
#18Unique items
Class Basics
#19Class properties
For Each
#20Iterate array
Map List
#21Transform list
Filter List
#22Filter elements
Reduce List
#23Aggregate elements
Data Class
#24Holds data automatically
Inheritance
#25open class
Interface
#26Define requirements
Extension Function
#27Extend existing types
Enum Class
#28Enums with values
Sealed Class
#29Restricted class hierarchy
Elvis Operator
#30?: for null defaults
String Templates
#31Evaluate in string
Pair and Triple
#32Tuples in Kotlin
Companion Object
#33Static members
Primary Constructor
#34Direct properties
Secondary Constructor
#35constructor keyword
Type Checking
#36is keyword
Safe Cast
#37as? operator
Higher Order Function
#38Pass function as arg
MapNotNull
#39Filter nulls
Lazy Delegation
#40by lazy
Generics
#41Generic functions
Exceptions
#42Try Catch
Infix Function
#43Call without dots
Operator Overloading
#44plus operator
Visibility Modifiers
#45private/internal
FlatMap
#46Flatten nested lists
Any / Unit
#47Kotlin root types
Set Intersect
#48intersect operation
Binary Search
#49O(log n) search
Bubble Sort
#50Sorting arrays
Coroutines Basics
#51launch / delay
Async / Await
#52Return values
Suspend Functions
#53suspend keyword
Flow Basics
#54Asynchronous stream
Map Flow
#55Transform flow
Scope Functions
#56let, run, with
Also Function
#57also scope
Apply Function
#58apply scope
Inline Functions
#59inline keyword
Reified Type Parameters
#60reified keyword
Type Aliases
#61typealias keyword
Delegated Properties
#62by map
Observable Delegation
#63Delegates.observable
Vetoable Delegation
#64Delegates.vetoable
Custom Delegate
#65getValue / setValue
Sequence Builder
#66sequence { yield() }
Destructuring Objects
#67componentN
Destructuring Maps
#68For loops
Contracts
#69kotlin.contracts
Regex
#70Regular expressions
Annotations
#71Custom annotations
Reflection
#72KClass, KProperty
Duration API
#73kotlin.time
JSON Parsing
#74kotlinx.serialization
Channel Basics
#75Send / Receive
Produce Builder
#76Coroutine Produce
Flow Zip
#77Combine flows
StateFlow
#78Hot flows
SharedFlow
#79Broadcast hot flows
CoroutineContext
#80Dispatchers
Exception Handling
#81CoroutineExceptionHandler
SupervisorJob
#82Independent children
WithContext
#83Switch thread
Android Context
#84Application Context
Intent Basics
#85Activity navigation
SharedPreferences
#86Save tiny data
Room Database
#87SQLite ORM
Retrofit API
#88REST Client
Jetpack Compose
#89@Composable
State in Compose
#90remember
Koin DI
#91Dependency Injection
Hilt DI
#92@HiltAndroidApp
RecyclerView
#93Adapter
ViewModel
#94UI State
LiveData
#95Lifecycle aware state
WorkManager
#96Background work
Result Type
#97Kotlin Result
Crossinline
#98Prevent non-local returns
Suspend Lazy
#99Async lazy init
Mutex
#100Mutual exclusion
Bitwise Operators
#101shl, shr, and, or
Functional Composition
#102compose functions
Graph DFS
#103Depth First
Graph BFS
#104Breadth First
Dijkstra
#105Shortest Path
