Как правильно определить данные, лучше ли создать класс, как показано ниже, а затем создать массив класса
Использование массива для свойств объектане в полной мере использует безопасность типов, которую вы имеете в Kotlin (и даже Java в этом отношении).Если вы хотите выразить несколько свойств объекта, то вам следует использовать класс для определения этих свойств.Это особенно верно, если свойства имеют разные типы.
Нет разницы в производительности между массивом и классом, потому что вы получите ссылку на кучу в обоих случаях.Вы можете сэкономить на производительности, только если вы преобразуете свой подход к многомерным массивам в одномерный массив с интеллектуальной индексацией.В большинстве случаев вам не следует рассматривать эту опцию, если вы не обрабатываете много данных и не знаете, что производительность является проблемой на этом конкретном уровне.
(не уверен, возможно ли это)
Определение списков / массивов классов определенно возможно.
Обычно для классов, которые используются только в качестве контейнеров данных, вы должны предпочесть классы данных , потому чтоони дают вам полезные методы бесплатно, и эти методы полностью имеют смысл для простых «пакетов данных», как в вашем случае (равно, хэш-код, доступ к компонентам и т. д.).
data class Vehicle(
val OEM: String,
val ModelName: String,
val EngineSize: String
)
Также я предлагаю использоватьval
вместо var
в максимально возможной степени.Неизменность в Kotlin более идиоматична.
И последнее, но не менее важное: предпочитайте ненулевые значения нулевым, если вы знаете, что значение всегда должно присутствовать.Если есть допустимые случаи, когда значение отсутствует, вы должны использовать ноль вместо значения заполнителя, такого как пустая строка или -1.