@kotlin_lang

Страница 788 из 982
Alex
01.08.2018
19:36:38
Можно только из уже скомпилированного класса достать

OlegKrikun
01.08.2018
19:36:40
поля то паблик

Хекс
01.08.2018
19:37:42
так, а как можно получить доступ к полям котлин класса из явы минуя геттеры? =)
разве в котлине минование геттера не чисто визуальное? кмк под капотом как раз геттер и вызывается

OlegKrikun
01.08.2018
19:37:46
тоесть раньше класс был явовский и я обращался object.field, а теперь класс в котлине и хочу так же из джавы обращатся

Google
Хекс
01.08.2018
19:40:12
тоесть раньше класс был явовский и я обращался object.field, а теперь класс в котлине и хочу так же из джавы обращатся
получается, обращался ты к object.field из котлина, но на самом деле вызывается тот самый геттер

OlegKrikun
01.08.2018
19:40:57
получается, обращался ты к object.field из котлина, но на самом деле вызывается тот самый геттер
это я как раз понимаю, вопрос в том можно ли как то пулучить доступ к самому филду напрямую

Sergey
01.08.2018
19:41:33
рефлексия? ?

если поле приватное

Хекс
01.08.2018
19:42:21
setAccessable(true) ?

но я этого не говорил

OlegKrikun
01.08.2018
19:42:51
да не, задача просто при переносе такой модели из джавы в котлин сделать так что бы джава код использующий её не менялся

короче @JvmField - вот ответ

Хекс
01.08.2018
19:44:56
ну если уместно из Джавы попытаться сделать Котлин...

Хекс
01.08.2018
19:46:24
эээ... чо?
ну ты ж хочешь в джаве обращаться напрямую к полю, а не через геттер. если я тебя правильно понял

визуально сделать код одинаковым

Google
OlegKrikun
01.08.2018
19:46:57
хочу что бы код в джаве не менялся когда я модель в котлин конвертирую =)

Хекс
01.08.2018
19:47:51
ну, геттер подразумевается жеж

Виктор
01.08.2018
19:48:12
Идею тоже можно? Я думал у них какая-то специальная сборка jvm..
У меня нередко идея на шенанде работает даже стабильнее, чем от JB. LOL ? Если ты не шрифтодрочер - то норм работает на любой JVM ?

Хекс
01.08.2018
19:48:19
то есть ты модель конвертишь в Котлин, это понятно, но у полей под капотом геттеры сеттеры для вызова из джавы

Виктор
01.08.2018
19:50:21
Есть мануал как заюзать?
ключики для шенанды: -XX:+UseShenandoahGC -XX:+UnlockExperimentalVMOptions -XX:ShenandoahGuaranteedGCInterval=5000 -XX:ShenandoahUncommitDelay=10000

Хекс
01.08.2018
19:50:22
то есть, например, есть дата класс на Котлин, поля. ты обращаешься к ним будто напрямую, но это только для вызова из Котлин так выглядит

Виктор
01.08.2018
19:51:16
Читать про шенанду тут: https://wiki.openjdk.java.net/display/shenandoah/Main

Хекс
01.08.2018
19:51:42
чуви, я читал доки )
да мне самому интересно

если у тебя выйдет, научи меня

но мне кажется из джавы так и так придется через геттеры

OlegKrikun
01.08.2018
19:53:31
короче @JvmField - вот ответ

https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.jvm/-jvm-field/index.html

OlegKrikun
01.08.2018
20:01:46
хреново, по крайней мере пару лет назад точно хреново под убунтой рендерилось на openjdk

Виктор
01.08.2018
20:03:40
Ну надо отдать должное JB - они таки пропихивают исправления в апстрим. Сейчас я сильно отличий не замечаю. Но я вообще шрифты один от другого отличать не умею

Mikhail
01.08.2018
20:08:00
У меня тоже такого скила нет

OlegKrikun
01.08.2018
20:26:29
Радуйтесь =) Я из за шрифтов в идее долго на винде сидел (ну и тотал коммандер =)))

Mikhail
01.08.2018
21:06:14
мда, на openjdk как-то не прикольно, шрифты слишком резкие, прям острые

Google
Mikhail
01.08.2018
21:06:58
посижу наверно на g1

OlegKrikun
01.08.2018
21:14:46
усё говно =) но мне впринципе и mc хватает =)

Dmitry
01.08.2018
21:16:22
Я поковырялся - дабл командер и крусадер умеют все то, что я делал на тотал командере. С меньшими настройками т.к. ломать не надо )

Igor
01.08.2018
21:17:34
усё говно =) но мне впринципе и mc хватает =)
Нормаc, можно навигироваться по папкам не выходя из idea ?

OlegKrikun
01.08.2018
21:18:07
да ну нафиг, я отключил плаг терминала =)

Konstantine
01.08.2018
22:59:26
С какой версии обещали (или уже сделали?) полностью immutable коллекции?

Был какой-то разговор об этом, вроде.

Dmitry
01.08.2018
23:22:14
Это только мечты. Не обещали.

Alexander
02.08.2018
05:21:31
усё говно =) но мне впринципе и mc хватает =)
Есть полудохлый крусадер, но он, конечно не идет в сравнение. Если что, есть вот эта штука - сильно новее, чем total commander и полностью бесплатная.

Лень искать, кто-нибудь знает аналог NavigableSet под K-common?

Alexander
02.08.2018
05:25:14
ой

http://multicommander.com/

не проснулся ещ

Alexandr
02.08.2018
05:25:50
Лень искать, кто-нибудь знает аналог NavigableSet под K-common?
под common вроде еще нет полноценного collections framework

Alexander
02.08.2018
05:26:25
заль. А то у меня один модуль из всего JDK один этот класс использует.

Alexandr
02.08.2018
05:27:03
а зачем именно navigableset?

Alexander
02.08.2018
05:34:27
Это ключи. Надо умеде делать очень быстрые выборки типа от сих до сих

Google
Alexander
02.08.2018
05:44:23
В принципе, там можно эту функциональность вынести наружу

The
02.08.2018
10:41:40


Admin
ERROR: S client not available

The
02.08.2018
10:42:03
Пацаны, как работает этот кусок кода? че то, работает он, не совсем так как я ожидаю

Quantum Harmonizer
02.08.2018
10:42:50
напиши тест на него чтобы мы не гадали, как он должен работать

The
02.08.2018
10:42:55
я ожидаю что я получу отфильтрованный список с груп айди 3 или со статусом alist

Andrew
02.08.2018
10:49:29
it.productStatus != null && it.productStatus!!.isAList() -> it.productStatus?.isAList() == true Так вы избавитесь от потенциального NPE на !! в случае, если между проверкой и обращением к методу другой поток статут обнулит. А вообще конкретно этот сниппет, который вы написали, вроде проблем не имеет. Смущает только уйма `var`-ов вместо `val`-ов. Не хотите писать тесты -- расставьте `println`-ы отладочные.

Quantum Harmonizer
02.08.2018
10:50:40
is.productStatus?.isAList() == true

Andrew
02.08.2018
10:51:09
(бэлин, телеграм после махинаций с WYSIWYG-форматированием выводит из себя)

is.productStatus?.isAList() == true
Спасибо, я завис, сколько там знаков равно надо поставить ?

Quantum Harmonizer
02.08.2018
10:53:08
Спасибо, я завис, сколько там знаков равно надо поставить ?
=== — странный предмет, потому что выражение слева — Boolean? и у него действительно есть айдентити. Нафиг, нафиг.

Andrew
02.08.2018
10:54:41
=== — странный предмет, потому что выражение слева — Boolean? и у него действительно есть айдентити. Нафиг, нафиг.
С одной стороны да, с другой стороны боксы булинов получаются только через Boolean.valueOf и всё равно оба прокешированы, по этому должно по идее работать. Но "нафиг, нафиг" -- вполне валидный аргумент.

The
02.08.2018
10:55:45
|| в фильтре не так работает

Andrew
02.08.2018
10:56:15
спасибо за подсказку на счет npe, я вижу как работает код. Но он работает не совсем так, как я ожидаю
Я ж говорю, в списке должны остаться продукты третьей группы + продукты со статусом isAList. Если что-то идёт не так, оно идёт вне этого сниппета. Потому отладка / тесты вам друг.

|| в фильтре не так работает
Фильтр принимает обычную функцию, которая на вход имеет элемент коллекции, на выходе отдаёт boolean (помещать ли элемент в результирующую коллекцию). Что именно в этой функции может работать не так, как в остальных местах?

dimiii
02.08.2018
10:58:41
== 3, !! - зачем же так?

Ну вообще, мой пойнт, что простота кода начинается с простых и ясных требований. Но общая гигиена не помешает. Простой код ведет к ожидаемому поведению.

Google
Andrew
02.08.2018
11:00:28
Я надеюсь, в настоящем коде всё-таки == Groups.FOOD, и это просто упрощение ?

Quantum Harmonizer
02.08.2018
11:02:59
если убрать || в фильтре, то фильтр работает правильно.
Фильтра работает правильно. Неправильно твоё ожидание от него, которые ты до сих пор не сформулировал.

You
02.08.2018
11:04:02
Мб ты return забыл?

Quantum Harmonizer
02.08.2018
11:05:54
вот что ожидаю
а что получаешь?

The
02.08.2018
11:07:12
а что получаешь?
получаю только alist

Quantum Harmonizer
02.08.2018
11:07:27
получаю только alist
Значит, айтемов с третьей категорией нет

Quantum Harmonizer
02.08.2018
11:07:45
да, их нет
в исходном списке

Страница 788 из 982