Contents
- Getting started with Kotlin
- Extension Methods
- Extension Methods
- Potential Pitfall Extensions are Resolved Statically
- Top-Level Extensions
- Lazy extension property workaround
- Sample extending Java 7 Path class
- Sample extending long to render a human readable string
- Sample extending Java 8 Temporal classes to render an ISO formatted string
- 07Using extension functions to improve readability
- Extension functions to Companion Objects appearance of Static functions
- Extensions for easier reference View from code
- Java 8 Stream Equivalents
- Java 8 Stream Equivalents
- Accumulate names in a List
- Collect example 5 - find people of legal age output formatted string
- Collect example 6 - group people by age print age and names together
- Counting items in a list after filter is applied
- Different Kinds of Streams 7 - lazily iterate Doubles map to Int map to String print each
- Different Kinds of Streams 3 - iterate a range of Integers
- Names of male members
- Group names of members in roster by gender
- Filter a list to another list
- Finding shortest string a list
- Different Kinds of Streams 2 - lazily using first item if exists
- Partition students into passing and failing
- Different Kinds of Streams 4 - iterate an array map the values calculate the average
- Different Kinds of Streams 5 - lazily iterate a list of strings map the values convert to Int find max
- Different Kinds of Streams 6 - lazily iterate a stream of Ints map the values print results
- Compute sum of salaries by department
- Group employees by department
- How streams work - filter upper case then sort a list
- Different Kinds of Streams 1 - eager using first item if it exists
- Compute sum of salaries of employee
- Convert elements to strings and concatenate them separated by commas
- Collect example 7a - Map names join together with delimiter
- Collect example 7b - Collect with SummarizingInt
- Interfaces
- Generics
- Functions
- Null safety
- Idioms
- Enum
- Reflection
- Configuring Kotlin build
- Conditional Statements
- Loops
- Logging
- Annotations
- Class Inheritance
- Arrays
- Vararg Parameters In Functions
- Basic Lambdas
- Type-Safe Builders
- Kotlin Caveats
- JUnit
- Exceptions
- Strings
- Regex
- Collections
- Type aliases
- Kotlin Android Extensions
- Visibility Modifiers
- DSL Building
- Kotlin for Java Developers
- Ranges
- RecyclerView
- Singletons
- Delegated properties
- Class Delegation
- Basics of Kotlin
- coroutines
- Contributors