Data Classes

Step one in building a world for your hero is to establish a coordinate system to move around on. The coordinate system will use cardinal directions to communicate direction as well as a class to represent change in direction, called Coordinate.

Coordinate is a simple type and a good candidate to be defined as a data class. As the name suggests, data classes are classes designed specifically for holding data, and they come with some powerful data manipulation benefits, as you will see shortly.

Create a new file called Navigation.kt and add Coordinate as a data class, using the data keyword. Coordinate should have three properties:

  • x, an Int val defined in the primary constructor for the x coordinate

  • y, an Int ...

Get Kotlin Programming: The Big Nerd Ranch Guide, First Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.