Data classes are expected to be simple data containers, so it's generally considered best practice to keep the logic in them minimal. If you need something more complicated, it's better to create a "normal" class and override
equals
,
hashCode
and
toString
yourself as needed.