Kotlin v1.7.21

  1. Get started with Kotlin
  1. Learn Kotlin fundamentals
  1. Install Kotlin
  1. Create your powerful application with Kotlin
  1. Kotlin Overview
  1. Kotlin Multiplatform
  1. Kotlin for server side
  1. Kotlin for Android
  1. Kotlin for JavaScript
  1. Kotlin Native
  1. Kotlin for data science
  1. Kotlin for competitive programming
  1. Basics
  1. Basic syntax
  1. Idioms
  1. Kotlin by Examples
  1. Coding conventions
  1. Package definition and imports
  1. Program entry point
  1. Print to the standard output
  1. Functions
  1. Variables
  1. Creating classes and instances
  1. Comments
  1. String templates
  1. Conditional expressions
  1. for loop
  1. while loop
  1. when expression
  1. Ranges
  1. Collections
  1. Nullable values and null checks
  1. Type checks and automatic casts
  1. Create DTOs (POJOs/POCOs)
  1. Default values for function parameters
  1. Filter a list
  1. Check the presence of an element in a collection
  1. String interpolation
  1. Instance checks
  1. Read-only list
  1. Read-only map
  1. Access a map entry
  1. Traverse a map or a list of pairs
  1. Iterate over a range
  1. Lazy property
  1. Extension functions
  1. Create a singleton
  1. Instantiate an abstract class
  1. If-not-null shorthand
  1. If-not-null-else shorthand
  1. Execute a statement if null
  1. Get first item of a possibly empty collection
  1. Execute if not null
  1. Map nullable value if not null
  1. Return on when statement
  1. try-catch expression
  1. if expression
  1. Builder-style usage of methods that return Unit
  1. Single-expression functions
  1. Call multiple methods on an object instance (with)
  1. Configure properties of an object (apply)
  1. Java 7's try-with-resources
  1. Generic function that requires the generic type information
  1. Nullable Boolean
  1. Swap two variables
  1. Mark code as incomplete (TODO)
  1. Configure style in IDE
  1. Source code organization
  1. Naming rules
  1. Formatting
  1. Documentation comments
  1. Avoid redundant constructs
  1. Idiomatic use of language features
  1. Coding conventions for libraries
  1. Concepts
  1. Types
  1. Basic Types
  1. Numbers
  1. Booleans
  1. Characters
  1. Strings
  1. Arrays
  1. Unsigned integer types
  1. Type checks and casts
  1. Control Flow
  1. Conditions and loops
  1. Returns and jumps
  1. Exceptions
  1. Packages and imports
  1. Classes and Objects
  1. Classes
  1. Inheritance
  1. Properties
  1. Interfaces
  1. Functional (SAM) interfaces
  1. Visibility modifiers
  1. Extensions
  1. Data classes
  1. Sealed classes
  1. Generics: in, out, where
  1. Nested and inner classes
  1. Enum classes
  1. Inline classes
  1. Object expressions and declarations
  1. Delegation
  1. Delegated properties
  1. Type aliases
  1. Functions
  1. Functions
  1. High-order functions and lambdas
  1. Inline functions
  1. Operator overloading
  1. Type-safe builders
  1. Using builders with builder type inference
  1. Null Safety
  1. Equality
  1. This expressions
  1. Asynchronous programming techniques
  1. Coroutines
  1. Annotations
  1. Destructuring declarations
  1. Reflection
  1. Standart Library
  1. Collections
  1. Collections overview
  1. Constructing collections
  1. Iterators
  1. Ranges and progressions
  1. Sequences
  1. Collection operations overview
  1. Collection transformation operations
  1. Filtering collections
  1. Plus and minus operators
  1. Grouping
  1. Retrieve collection parts
  1. Retrieve single elements
  1. Ordering
  1. Aggregate operations
  1. Collection write operations
  1. List-specific operations
  1. Set-specific operations
  1. Map-specific operations
  1. Scope functions
  1. let
  1. run
  1. run2
  1. with
  1. apply
  1. also
  1. Opt-in requirements
  1. Official Libraries
  1. Coroutine
  1. Coroutines guide
  1. Coroutines basics
  1. Coroutines and channels − tutorial
  1. Cancellation and timeouts
  1. Composing suspending functions
  1. Coroutine context and dispatchers
  1. Asynchronous Flow
  1. Channels
  1. Coroutine exceptions handling
  1. Shared mutable state and concurrency
  1. Select expression (experimental)
  1. Debug coroutines using IntelliJ IDEA – tutoria
  1. Debug Kotlin Flow using IntelliJ IDEA – tutorial
  1. Serialization
  1. Lint Check
  1. Lincheck guide
  1. Write your first test with Lincheck
  1. Stress testing and model checking
  1. Operation arguments
  1. Modular testing
  1. Data structure constraints
  1. Progress guarantees
  1. Sequential specification
  1. Language Reference
  1. Keywords and operators
  1. Grammar
  1. Language Spesification
  1. Tools
  1. Build Tools
  1. Gradle
  1. Maven
  1. Ant
  1. IDEs for Kotlin development
  1. Migrate to Kotlin code style
  1. Run code snippets
  1. Compiler
  1. Kotlin command-line compiler
  1. Kotlin compiler options
  1. Compiler Plugins
  1. All-open compiler plugin
  1. No-arg compiler plugin
  1. SAM-with-receiver compiler plugin
  1. Using kapt
  1. Lombok compiler plugin