Size: a a a

2021 January 26

IS

Ilyas Sarsenbaev in learn.java
Qwant
При вычислении хэш-кода для объектов класса Object по умолчанию используется Park-Miller RNG алгоритм. В основу работы данного алгоритма положен генератор случайных чисел. Это означает, что при каждом запуске программы у объекта будет разный хэш-код.

Я как понимаю, рандомное число подразумевается что при вызове new ClassA() 2 раза, может получиться так, что 2 объекта, получат 1 и тот же хешкод? В случае с native методом hashcode
я думал обычно у обжект хеш это адрес который ссылается в кучу
источник

DC

Denis Chikanov in learn.java
Ilyas Sarsenbaev
а как мне в классе получить данные из .env? есть какие-то библиотеки?
Если ты пользуешься существующими фреймворками - плюс-минус все из них умеют в вычитывание конфига из окружения, см. доки фреймворка, если нет - вроде библиотеки работы с конфигурацией есть и умеют, да.
Если и их не брать - никто не мешает через System доставать переменные окружения.

Только .env-файлы в джаве обычно не используются.
источник

DC

Denis Chikanov in learn.java
Ilyas Sarsenbaev
я думал обычно у обжект хеш это адрес который ссылается в кучу
Нет, это миф
источник

DC

Denis Chikanov in learn.java
Qwant
При вычислении хэш-кода для объектов класса Object по умолчанию используется Park-Miller RNG алгоритм. В основу работы данного алгоритма положен генератор случайных чисел. Это означает, что при каждом запуске программы у объекта будет разный хэш-код.

Я как понимаю, рандомное число подразумевается что при вызове new ClassA() 2 раза, может получиться так, что 2 объекта, получат 1 и тот же хешкод? В случае с native методом hashcode
Да, могут. Поэтому хэшкод надо переопределять.
источник

Q

Qwant in learn.java
Ilyas Sarsenbaev
я думал обычно у обжект хеш это адрес который ссылается в кучу
Вот и я так думал, а тут какой то RNG используется)
источник

IS

Ilyas Sarsenbaev in learn.java
Denis Chikanov
Если ты пользуешься существующими фреймворками - плюс-минус все из них умеют в вычитывание конфига из окружения, см. доки фреймворка, если нет - вроде библиотеки работы с конфигурацией есть и умеют, да.
Если и их не брать - никто не мешает через System доставать переменные окружения.

Только .env-файлы в джаве обычно не используются.
а что использовать кроме .env файлов?
источник

Q

Qwant in learn.java
Denis Chikanov
Да, могут. Поэтому хэшкод надо переопределять.
Сенсация для меня)
источник

DC

Denis Chikanov in learn.java
Ilyas Sarsenbaev
а что использовать кроме .env файлов?
Просто сеттят в переменные окружения часто (средствами, которыми разворачивают приложение, например), зависит
источник

IS

Ilyas Sarsenbaev in learn.java
Denis Chikanov
Просто сеттят в переменные окружения часто (средствами, которыми разворачивают приложение, например), зависит
думал есть какие-то средства для этого, чтобы взял и изменил, особенно для тех кто докеры пока не юзает.
источник

DC

Denis Chikanov in learn.java
С дотэнвами мб тоже кто-то работает, я, честно сказать, не интересовался
источник

DC

Denis Chikanov in learn.java
Ну т.е. ЧТО-ТО наверняка есть
источник

Q

Qwant in learn.java
Ilyas Sarsenbaev
я думал обычно у обжект хеш это адрес который ссылается в кучу
Оказывается ссылку на адресс памяти возращяет this==object
источник

Q

Qwant in learn.java
А я почему - то это путал с hashcode =(
источник

IS

Ilyas Sarsenbaev in learn.java
Qwant
Оказывается ссылку на адресс памяти возращяет this==object
т.е в екуалс?
источник

Q

Qwant in learn.java
Ilyas Sarsenbaev
т.е в екуалс?
По дефолту да
источник

АИ

Александр Игутов... in learn.java
Здравствуйте. Подскажите пожалуйста, возможно ли реализовать принцип считывания сроки данных при котором считывание завершается после нажатия n-го кол-ва пробелов. Например: 1 * 5 - здесь два пробела между символами. Хочу сделать так чтобы ввод прекращался, если пользователь ставит пробел после пятерки
источник

IS

Ilyas Sarsenbaev in learn.java
Denis Chikanov
Ну т.е. ЧТО-ТО наверняка есть
спс, попробую поискать
источник

Q

Qwant in learn.java
Александр Игутов
Здравствуйте. Подскажите пожалуйста, возможно ли реализовать принцип считывания сроки данных при котором считывание завершается после нажатия n-го кол-ва пробелов. Например: 1 * 5 - здесь два пробела между символами. Хочу сделать так чтобы ввод прекращался, если пользователь ставит пробел после пятерки
Используй регулярные выражения
источник

Q

Qwant in learn.java
Александр Игутов
Здравствуйте. Подскажите пожалуйста, возможно ли реализовать принцип считывания сроки данных при котором считывание завершается после нажатия n-го кол-ва пробелов. Например: 1 * 5 - здесь два пробела между символами. Хочу сделать так чтобы ввод прекращался, если пользователь ставит пробел после пятерки
Если в строке есть 5 и пробел то Callback и там делай что хочешь
источник

АИ

Александр Игутов... in learn.java
Спасибо!
источник