0% found this document useful (0 votes)
336 views

Kotlin Cheat Sheet & Quick Reference

This document provides a 3 paragraph summary of Kotlin: Kotlin is a programming language used for building Android, iOS, web, and server-side applications. The main() function is the starting point of every Kotlin program. Print statements are used to output text to the console. Kotlin supports variables that are mutable, using var, and immutable, using val. Data types include numbers, strings, booleans, characters, arrays and collections. Conditional expressions include if/else statements and when expressions to check various conditions. Comparison operators like == and > are used to compare values. Logical operators like && and || are used to combine conditional expressions. Collections like lists, sets and maps can store multiple
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
336 views

Kotlin Cheat Sheet & Quick Reference

This document provides a 3 paragraph summary of Kotlin: Kotlin is a programming language used for building Android, iOS, web, and server-side applications. The main() function is the starting point of every Kotlin program. Print statements are used to output text to the console. Kotlin supports variables that are mutable, using var, and immutable, using val. Data types include numbers, strings, booleans, characters, arrays and collections. Conditional expressions include if/else statements and when expressions to check various conditions. Comparison operators like == and > are used to compare values. Logical operators like && and || are used to combine conditional expressions. Collections like lists, sets and maps can store multiple
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

Kotlin

A quick reference cheatsheet for Kotlin that includes usage, examples, and more.

# Introduction to Kotlin
main()

fun main() {
println("Greetings, QuickRef.ME!")
// Code goes here
}

The main() function is the starting point of every Kotlin program and must be included in the code before execution

Print statement

println("Greetings, earthling!")
print("Take me to ")
print("your leader.")

/*
Print:
Greetings, earthling!
Take me to your leader.
*/
Notes

// this is a single line comment

/*
this
note
for
many
*/

Execution order

fun main() {
println("I will be printed first.")
println("I will be printed second.")
println("I will be printed third.")
}

# Data Types and Variables


Mutable variables

var age = 25
age = 26

Immutable variables

val goldenRatio = 1.618


Type inference

// The following variables are assigned a literal value inside double quotes
// so the inferred type is String

var color = "Purple"

String concatenation

var streetAddress = "123 Main St."


var cityState = "Brooklyn, NY"

println(streetAddress + " " + cityState)


// Print: 123 Main St. Brooklyn, NY

String Templates

var address = "123 Main St."


println("The address is $address")
// prints: The address is 123 Main St.

Built-in Properties and Functions

var monument = "the Statue of Liberty"

println(monument. capitalize())
// print: The Statue of Liberty
println(monument. length)
// print: 21

Character escape
print("\"Excellent!\" I cried. \"Elementary,\" said he.")

// Print: "Excellent!" I cried. "Elementary," said he.

\n insert new line

\t inserts a tab

\r inserts carriage return

\' inserts a single quote

\" inserts a double quote

\\ inserts a backslash

\$ inserts a dollar sign

Arithmetic Operators

5 + 7 // 12
9 -2 // 7
8 *4 // 32
25 /5 // 5
31 % 2 // 1

+ addition, - subtraction, * multiplication, / division, and % modulus

Order of operations
5 + 8 *2 /4 -3 // 6
3 + (4 + 4) /2 // 7
4 *2 + 1 *7 // 15
3 + 18 /2 *1 // 12
6 -3 % 2 + 2 // 7

Enhanced assignment operator

var batteryPercentage = 80

// long syntax
batteryPercentage = batteryPercantage + 10

// short syntax with augmented assignment operator


batteryPercentage += 10

Increment and decrement operators

var year = 2019


year++ // 2020
year-- // 2019

Math library

Math.pow(2.0, 3.0) // 8.0


Math.min(6, 9) // 6
Math.max(10, 12) // 12
Math. round(13.7) // 14
# Conditional Expression
If expression

var morning = true

if (morning) {
println("Rise and shine!")
}
// Print: Rise and shine!

Else-expression

var rained = false

if (rained) {
println("No need to water the plants today.")
} else {
println("The plant needs to be watered!")
}
// print: The plant needs watering!

Else-If expressions

var age = 65

if (age < 18 ) {
println("You are considered a minor")
} else if (age < 60) {
println("You are considered an adult")
} else {
println("You are considered senior")
}

// print: you are considered senior


Comparison Operators

var myAge = 19
var sisterAge = 11
var cousinAge = 11

myAge > sisterAge // true


myAge < cousinAge // false
myAge >= cousinAge // true
myAge <= sisterAge // false

Logical Operators

var humid = true


var raining = true
var jacket = false

println(!humid)
// print: false
println(jacket && raining)
// print: true
println(humid || raining)
// print: true

AND operator: &&

var humid = true


var raining = true
var shorts = false
var sunny = false

// true AND true


println(humid && raining) // true
// true AND false
println(humid && shorts) // false
// false AND true
println(sunny && raining) // false
// false AND false

Or operator:||

var late = true


var skipBreakfast = true
var underslept = false
var checkEmails = false

// true OR true
println(skipBreakfast || late) // true
// true OR false
println(late || checkEmails) // true
// false OR true
println(underslept || late) // true
// false OR false
println(checkEmails || underslept) // false

NOT operator

var hungry = true


var full = false
println(!hungry) // false

Evaluation order

!true && (false || true) // false


/*
(false || true) is evaluated first to return true.
Then, evaluate !true && true and return the final result false
*/

!false && true || false // true


/*
!false is evaluated first to return true.
Then true && true is evaluated, returning true.
then, true || evaluates to false and eventually returns true
*/

Nested conditions

var studied = true


var well Rested = true

if (wellRested) {
println("Good luck today!")
if (studied) {
println("You should prepare for the exam!")
} else {
println("Spend a few hours studying before the exam!")
}
}

// Print: Good luck today!


// print: You should be ready for the exam!
When expression

var grade = "A"

when (grade) {
"A" -> println("Great job!")
"B" -> println("Great job!")
"C" -> println("You passed!")
else -> println("Close! Be sure to prepare more next time!")
}
// print: Great job!

Range operator

var height = 46 // inches

if (height in 1..53) {
println("Sorry, you must be at least 54 inches to ride the coaster")
}
// Prints: Sorry, you must be at least 54 inches to ride the roller coaster

Equality Operators

var myAge = 22
var sisterAge = 21

myAge == sisterAge // false


myAge !== sisterAge // true
# Collections
Immutable list

var programmingLanguages = listOf("C#", "Java", "Kotlin", "Ruby")

Mutable List

var fruits = mutableListOf("Orange", "Apple", "Banana", "Mango")

Access List

var cars = listOf("BMW", "Ferrari", "Volvo", "Tesla")

println(cars[2]) // Prints: Volvo

Size Attribute

var worldContinents = listOf("Asia", "Africa", "North America", "South America", "Antarctica", "Europe",
"Australia")

println(worldContinents.size) // Prints: 7

List Manipulation

var seas = listOf("Black Sea", "Caribbean Sea", "North Sea")


println(seas. contains("North Sea")) // Prints: true

// The contains() function performs a read operation on any list and determines if the element exists
seas.add("Baltic Sea") // Error: cannot write to immutable list
// The add() function can only be called on mutable lists, so the code above throws an error
Immutable Sets

var primaryColors = setOf("Red", "Blue", "Yellow")

Mutable Sets

var womenInTech = mutableSetOf("Ada Lovelace", "Grace Hopper", "Radia Perlman", "Sister Mary Kenneth

Access Collection Elements

var companies = setOf("Facebook", "Apple", "Netflix", "Google")

println(companies.elementAt(3))
// Prints: Google
println(companies.elementAt(4))
// Returns and Error
println(companies.elementAtOrNull(4))
// Prints: null

Immutable Map

var averageTemp = mapOf("winter" to 35, "spring" to 60, "summer" to 85, "fall" to 55)

Mutable Mapping

var europeanDomains = mutableMapOf("Germany" to "de", "Slovakia" to "sk", "Hungary" to "hu", "Norway" to "no")

Retrieve map keys and values

var oscarWinners = mutableMapOf("Parasite" to "Bong Joon-ho", "Green Book" to "Jim Burke", "The Shape Of Water

println(oscarWinners.keys)
// Prints: [Parasite, Green Book, The Shape Of Water]

println(oscarWinners.values)
// Prints: [Bong Joon-ho, Jim Burke, Guillermo del Toro]
println(oscarWinners["Parasite"])
// Prints: Bong Joon-ho

Add and remove map entries

var worldCapitals = mutableMapOf("United States" to "Washington D.C.", "Germany" to "Berlin", "Mexico" to "Mex

worldCapitals.put("Brazil", "Brasilia")
println(worldCapitals)
// Prints: {United States=Washington D.C., Germany=Berlin, Mexico=Mexico City, France=Paris, Brazil=Brasilia}

worldCapitals.remove("Germany")
println(worldCapitals)
// Prints: {United States=Washington D.C., Mexico=Mexico City, France=Paris, Brazil=Brasilia}

# Function
Function

fun greet() {
println("Hey there!")
}

fun main() {
//Function call
greet() //Prints: Hey there!
}

Function Parameters

fun birthday(name: String, age: Int) {


println("Happy birthday $name! You turn $age today!")
}

fun main() {
birthday("Oscar", 26)
//Prints: Happy birthday Oscar! You turn 25 today!
birthday("Amarah", 30)
//Prints: Happy birthday Amarah! You turn 30 today!
}

Default Parameters

fun favoriteLanguage(name, language = "Kotlin") {


println("Hello, $name. Your favorite programming language is $language")
}

fun main() {
favoriteLanguage("Manon")
//Prints: Hello, Manon. Your favorite programming language is Kotlin

favoriteLanguage("Lee", "Java")
//Prints: Hello, Lee. Your favorite programming language is Java
}

Named Parameters
fun findMyAge(currentYear: Int, birthYear: Int) {
var myAge = currentYear -birthYear
println("I am $myAge years old.")
}

fun main() {
findMyAge(currentYear = 2020, birthYear = 1995)
//Prints: I am 25 years old.
findMyAge(birthYear = 1920, currentYear = 2020)
//Prints: I am 100 years old.
}

Return Statement

//Return type is declared outside the parentheses


fun getArea(length: Int, width: Int): Int {
var area = length *width

//return statement
return area
}

fun main() {
var myArea = getArea(10, 8)
println("The area is $myArea.")
//Prints: The area is 80.
}

Single expression function

fun fullName(firstName: String, lastName: String) = "$firstName $lastName"


fun main() {
println(fullName("Ariana", "Ortega"))
//Prints: Ariana Ortega
println(fullName("Kai", "Gittens"))
//Prints: Kai Gittens
}

Function Literals

fun main() {
//Anonymous Function:
var getProduct = fun(num1: Int, num2: Int): Int {
return num1 *num2
}
println(getProduct(8, 3))
//Prints: 24
//Lambda Expression
var getDifference = { num1: Int, num2: Int -> num1 -num2 }
println(getDifference(10, 3))
//Prints: 7
}

# Class
Class Example

//class with properties containing default values


class Student {
var name = "Lucia"
var semester = "Fall"
var gpa = 3.95
}

//shorthand syntax without class body


l St d t
Class Instance

// Class
class Student {
var name = "Lucia"
var semester = "Fall"
var gpa = 3.95
}

fun main() {
var student = Student()
// Instance
println(student.name)
// Prints: Lucia
println(student.semester)
// Prints: Fall
println(student.gpa)
// Prints: 3.95
}

Primary Constructor

class Student(val name: String, val gpa: Double, val semester: String, val estimatedGraduationYear: Int)

fun main() {
var student = Student("Lucia", 3.95, "Fall", 2022)
println(student.name)
//Prints: Lucia
println(student.gpa)
//Prints: 3.95
println(student.semester)
//Prints: Fall
println(student.estimatedGraduationYear)
//Prints: 2022
}

Initialization Block

class Student(val name: String, val gpa: Double, val semester: String, val estimatedGraduationYear: Int) {
init {
println("$name has ${estimatedGraduationYear -2020} years left in college.")
}
}

fun main() {
var student = Student("Lucia", 3.95, "Fall", 2022)
//Prints: Lucia has 2 years left in college.
}

Member Function

class Student(val name: String, val gpa: Double, val semester: String, val estimatedGraduationYear: Int) {

init {
println("$name has ${estimatedGraduationYear -2020} years left in college.")
}

//member function
fun calculateLetterGrade(): String {
return when {
gpa >= 3.0 -> "A"
gpa >= 2.7 -> "B"
gpa >= 1.7 -> "C"
gpa >= 1.0 -> "D"
else -> "E"
}
}
}

//When the instance is created and the function is called, the when expression will be executed and return the
fun main() {
var student = Student("Lucia", 3.95, "Fall", 2022)
//Prints: Lucia has 2 years left in college.
println("${student.name}'s letter grade is ${student.calculateLetterGrade()}.")
//Prints: Lucia's letter grade is A.
}

You might also like