Kotlin Koans 06 Data classes

目次

Data classes (Playground)

Description

Rewrite the following Java code to Kotlin:

次のJavaコードを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 関数のコンパイルが通るはずです。

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

Code

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

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

Memo


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

参考

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

← Posts