Kotlin Koans 06 Data classes


Data classes (Playground)


Rewrite the following Java code to Kotlin:


public class Person {
    private final String name;
    private final int age;

    public Person(String name, int age) {
        this.name = name;
        this.age = age;

    public String getName() {
        return name;

    public int getAge() {
        return age;

Then add a modifier data to the resulting class. This annotation means the compiler will generate a bunch of useful methods in this class: equals/hashCode, toString and some others. The getPeople function should start to compile.

Read about classes, properties and data classes.

次に、結果のクラスに data 修飾子を追加してください。これは、コンパイラが equals/hashCode, toString などの多くの有用なメソッドを生成することを表します。 getPeople 関数のコンパイルが通るはずです。

クラス, プロパティ, データクラス を読んでください。


data class Person(val name: String, val age: Int)

fun getPeople(): List<Person> {
    return listOf(Person("Alice", 29), Person("Bob", 31))


通常クラスと data クラスの実装の違いには意識しておく必要がある。


data classで配列を使う時はequalsをオーバーライドしよう [Kotlin]

← Blog