Articles of класс

Поиск обходного пути для основного конструктора классов данных kotlin

С данным кодом kotlin: sealed class Event(val id:String= UUID.randomUUID().toString(), val timestamp:Instant = Instant.now()) data class BarEvent(val additionalInfo:String):Event() object FooEvent:Event() // data class CorrectFooEvent():Event() // invalid kotlin fun main(args: Array<String>) { val b1 = BarEvent("b1") val f1 = FooEvent Thread.sleep(1000) val b2 = BarEvent("b2") val f2 = FooEvent println("${b1.id} ${b1.timestamp} $b1") println("${f1.id} ${f1.timestamp} $f1") println("${b2.id} ${b2.timestamp} […]

Откуда распространяются классы данных Kotlin? Могу ли я увеличить их?

Я работал с class data class Kotlin, и я думал о том, можно ли расширить некоторый класс (который содержит функциональность copy например), чтобы увеличить все class data es? Можно ли вообще расширить class data ?

Kotlin: Интерфейс, посредством которого разработчик должен быть классом данных?

Есть ли интерфейс, который я могу расширить или каким-либо другим способом создать интерфейс, в котором класс реализации должен быть классом данных? Было бы полезно иметь доступ к методам API класса данных, таким как copy ().

Ссылка за закрытым классом в Котлине?

Я пытаюсь создать класс, который использует свое собственное состояние для работы с состоянием внешнего объекта, на который он ссылается. Внешний объект может быть класса A или B, которые аналогичны, но не контролируются автором. Таким образом, запечатанный класс создается для доступа к их общим атрибутам, за этот более ранний ответ от @ SimY4 . // *** […]

Функция доступа перед вызовом конструктора суперкласса в классе данных Kotlin

Я использую классы данных в Kotlin, чтобы значительно уменьшить количество Java-кода, который в противном случае мне пришлось бы писать. Однако в одном из моих классов Java я не уверен, что делать, чтобы добиться того же результата в Котлине. Мой класс Java выглядит примерно так: public class DataObject { private int mId; private String mName; public […]

Должен ли я использовать класс данных, даже если я реализую все hashCode (), equals () и toString ()?

У меня есть класс, который является результатом синтаксического анализа строки, поэтому я должен принудительно использовать toString (), чтобы возвращать эту исходную строку вместо этих проанализированных значений. Он также имеет собственный механизм equals () / hashCode (). Есть ли какая-либо польза, чтобы по-прежнему отмечать ее как класс данных?

Функция для выражения лямбда

У меня есть класс данных, и мне нужно инициализировать List<String> . Мне нужно получить значения JsonArray (я использую Gson). Я сделал эту функцию: private fun arrayToList(data: JsonArray, key: String): List<String> { val list = mutableListOf<String>() data.forEach { a -> list.add(a[key].asString) } return list } Как я могу преобразовать в работу как выражение лямбда? Благодарю.

Несколько конструкторов в неизменяемом (data) классе

Я пытаюсь реализовать неизменяемый класс данных с более чем одним конструктором. Я чувствовал, что что-то вроде этого должно быть возможно: data class Color(val r: Int, val g: Int, val b: Int) { constructor(hex: String) { assert(Regex("#[a-fA-F0-6]{6}").matches(hex), { "$hex is not a hex color" } ) val r = hex.substring(1..2).toInt(16) val g = hex.substring(3..4).toInt(16) val b […]

Как имитировать или достигать отношения IS-A для классов данных Kotlin

Я изучал Котлин и написал небольшую программу / скрипт, который выполняет задание, которое мне кажется скучным. В разработке программы я использую классы данных для представления списка воспроизведения. в какой-то момент в дизайне я хотел иметь специальный тип Playlist который был EmptyPlaylist . Я не мог заставить это работать. Как бы вы достигли этих отношений с […]

Невозможно получить доступ к переменной из внутреннего класса: Kotlin android

Я новичок в разработке Kotlin в android. здесь я пытаюсь получить доступ к переменной, определенной в классе из внутреннего класса, как показано ниже. class MainActivity : AppCompatActivity() { var frags: MutableList<Fragment> = mutableListOf() //………….onCreate and other methods …. internal class CustAdapter(var arrayList: ArrayList<NavigationData>) : RecyclerView.Adapter<CustAdapter.MyViewHolder>() { override fun onBindViewHolder(holder: MyViewHolder?, position: Int) { holder!!.bindItems(arrayList[position]) } […]

Intereting Posts
Статические методы расширения в Котлине Не в состоянии получить ответ от smack Создание kdoc и просмотр в браузере Каковы правила вывода точки с запятой в Котлин? каков официальный / правильный способ создания сущности и файла Dao при использовании kotlin Kotlin: переопределение общего свойства внутри подтипа Kotlin: установка частного булева класса Java через класс Data в Котлине. Почему я не могу это сделать? Отклонение на уровне объявления может вызвать ClassCastException Использование цветов, определенных в базовом модуле из функционального модуля, не выполняется после восстановления Android Instant App Ошибка с java8 и Kotlin Почему объектам, находящимся внутри объекта сопутствующего объекта Kotlin, не удается получить доступ к «статически», когда другие члены могут? Объявление глобального объекта в Котлине Запись таймера с помощью Handler в Котлине Получение информации KProperty изнутри делегированной собственности вне функций getValue () и setValue () RxJava2 таймер и combLatest