// .filter
val filtered = dogs.filter { dog -> dog.breed = "Australian Cattle Dog" }
// .map
val breeds = dogs.map { dog -> dog.breed }
// .forEach
dogs.forEach { dog -> println(dog.breed) }
// .any
val hasPuppies = dogs.any { dog -> dog.age <= 1 }
// .groupBy
val dogsByBread = dogs.groupBy { dog -> dog.breed }
// multiple functions
val count = (1..100).filter { i -> i % 2 == 0 }
.map { i -> i * i }
.count { it % 10 == 0 }
// other useful methods
checkNotNull(input) { "input cannot be null" }
input?.let { str -> println(str)}
input?.let { str -> str + " ext" }?.also { print(it) }
TODO{"add more gists later"}