Класс данных Kotlin, скопируйте значения полей одного класса данных в другой класс данных с теми же полями - PullRequest
0 голосов
/ 23 апреля 2019

Привет, у меня есть класс данных Books с некоторыми полями, такими как id, имя, цена и т. Д. У меня есть другой класс данных LocalBooks с точно такими же same полями, как класс Books. Я хочу скопировать все значения Books полей класса данных в поля LocalBooks. Я пробовал таким образом. Это хорошо, когда у вас есть всего несколько полей, но если у вас больше полей больше 20 или больше, то следование этому методу занимает много времени. Я хотел знать, есть ли какой-либо метод в kotlin, который может помочь в этом.

data class Books(val name: String, val price: Int) : Serializable
data class LocalBooks(val name: String, val price: Int) : Serializable
val books = Books("Book1", 22)
val localBooks = LocalBooks(books.name, books.price)

1 Ответ

0 голосов
/ 23 апреля 2019

Как насчет комбинированного принципа повторного использования решение:

data class Book(val name: String, val price: Int)
data class LocalBook(val book: Book, val localInfo: String)
val book = Book("foo", 1)
val localBook = LocalBook(book.copy(), "bar")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...