Introduction to Kotlin
  • Introduction
  • Downloading and Installing
  • Our First Kotlin Program
Types and Variables
  • Variable Declarations
  • Type Inference
  • Ranges
  • Arrays
  • Strings and String Interpolation
Control Flow
  • Nullability
  • If Statement
  • Smart Casts
  • For Iteration
  • When Expression
Functions
  • Top-Level Functions
  • Return Types and Arguments
  • Variable-Argument Functions
  • Local (a.k.a. Nested or Inner) Functions
  • Infix Functions
Lambda Functions
  • Lambda Functions
  • Higher-Order Functions
  • Function Types with Receivers
  • Functors
Classes
  • Properties
  • Extension Functions and Properties
  • Primary Constructors and Initialization
  • Delegated Properties
  • Data Classes
  • Singleton
  • Companion Objects
  • Inheritance
  • Interfaces
  • Class Delegation
Collection Operations
  • Overview
  • API Overview and Sequence Generators
  • Quantifiers (any, all, count, contains)
  • Projection (map, flatMap, associate)
  • Aggregation (fold, reduce, joinToString)
  • Filtering (filter, filterNot)
  • Partitioning (drop & take)
  • Grouping (groupBy)
  • Sorting (sortedBy, sortedWith, compareBy, thenBy)
  • Element Operations (first, last, single, elementAt)
  • Set Operations (distinct, intersect, union, subtract)
  • Summary
Reflection
  • Class Reflection
  • Function References
  • Property References
  • Constructor References
  • Bound References
Odds & Ends
  • Type Aliases
  • Enumerations
  • Exceptions
  • Operator Overloads
  • Type-Safe Builders