Igualdade em Kotlin

Estou aprendendo Kotlin, com experiência em C ++ e Java. Eu estava esperando o seguinte para imprimirtrue, nãofalse. Eu sei disso== mapeia paraequals. A implementação padrão deequals para comparar cada membro, ou seja,firstName elastName? Nesse caso, ele não veria os valores da sequência como iguais (desde== mapeia paraequal novamente)? Aparentemente, há algo relacionado à igualdade versus identidade que eu ainda não entendi direito em Kotlin.

class MyPerson(val firstName: String, val lastName: String)

fun main(args: Array<String>) {
   println(MyPerson("Charlie", "Parker") == MyPerson("Charlie", "Parker"))
}

questionAnswers(3)

yourAnswerToTheQuestion