Двач.hk не отвечает.
Вы видите копию треда, сохраненную 8 марта 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
56 Кб, 1600x1000
409 Кб, 1920x1080
8 Кб, 360x203
Официальный™ тред Java #22 #642217 В конец треда | Веб
Этот тред для тех, кто пишет (или хочет научиться писать) на кроссплатформенном, свободном, и самом распространенном языке современности. Java это воистину простой как камень и потому бессмертный язык. Во время войны в Ираке, американские солдаты выбрасывали свои ЯП, и подбирали Java. Британские ученые провели исследование, в результате которого выявили 58 видов Java. Женщины Вестероса шьют флаги и слагают песни в честь Java. Как тут не оставаться равнодушным?

0. Минимальный список технологий, которые нужно знать, чтоб взяли стажером: https://atlas.mindmup.com/2015/10/3d59a040592a0133d02a5d31ebcc5420/java/index.html
Цикл статей что в каком порядке учить: http://dou.ua/lenta/articles/java-beginner-guide-1/ (заблочен РосКомПозором, юзайте прокси)

1. Туториалы есть?
BEGINNER: http://myflex.org/books/java4kids/java4kids.htm
MEDIUM: http://www.tutorialspoint.com/java_technology_tutorials.htm
HARD: http://docs.oracle.com/javase/tutorial/

2. Я зануда и я хочу умные книжки.
1. Head First Java, (2nd Edition) : Kathy Sierra, Bert Bates - для совсем нулячих простым языком.
2. Core Java (9th edition) : Cay S. Horstmann, Gary Cornell - тоже для нубасов, но на серьёзных щщах.
3. Thinking in Java (4th Edition): Bruce Eckel - для тех, кто умеет в хеллоуворлд на другом языке.
4. Effective Java (2nd Edition): Joshua Bloch - для тех, кто знает язык, но хочет перестать писать костыли.
Больше здесь: http://www.proklondike.com/books/java.html

3. Я не умею читать и хочу видео!
Пожалуйста http://dou.ua/forums/topic/8113/
http://habrahabr.ru/company/golovachcourses/blog/215275/

4. А где практиковаться?
Начните с бесплатных задач по данному языку: http://codingbat.com/java
Дополнительную практику можно получить здесь: https://www.codehunt.com/
Код играючи: http://www.codingame.com/puzzles
Рулеточка: http://postimg.org/image/xdfbvgps9/
Ещё задачки: http://eax.me/programming-language-learning/
Олимпиадка: http://acmp.ru/?main=tasks + acm.timus.ru
Простенькие: http://www.programmr.com/zone/java

5. Что насчет SQL?
Начни с малого: http://www.w3schools.com/sql/default.asp
Затем переходи к: http://www.sql-ex.ru/
В качестве чтива рекомендую: http://oreilly.com/catalog/sqlhks/chapter/

6. Java EE, Java FX:
https://www.youtube.com/channel/UCYTFfeXufxZM5pdC_OEmJwg
https://github.com/KriechelD/YouTubeChannel

7. Всё это хорошо, но без алгоритмов меня на работу не возьмут.
Не беда, вот курсы от Принстонского университета: https://www.coursera.org/course/algs4partI
То же самое но в бумаге: Роберт Седжвик, Кевин Уэйн - Алгоритмы на Java

8. Я готов к первому собеседованию.
Проверь свои знания здесь: http://www.quizful.net/test мнение ОП-хуя: там много вопросов на знание довольно специфичных вещей. Я охуел однажды: тест был про наследование, а вопрос -- про Cloneable и прочую хуергу, где для ответа надо было знать, что у Object clone() имеет модификатор доступа protected и прочую слабо-связанную с тематикой хуергу
И здесь: http://www.careercup.com/
Советы по написанию резюме: потеряли. Может, у кого есть скрин?
20 Кб, 380x304
#2 #642224
bump
#3 #642309
Java подходит для программирования микроконтроллеров? Вроде Adruino.
>>642323
#4 #642323
>>642309
Смотря в каком смысле ты употребляешь "подходит". На ней можно программировать, но врядли это можно назвать "подходит". Хотя изначально язык создавался под программирование кофеваорк, собственно и специальная jvm для встроеных систем есть. https://habrahabr.ru/post/274571/
#5 #642333
Вот переопределил метод стандартным генератором IteliJ
И пытаюсь понять это:
@Override
public int hashCode() {
int result = s != null ? s.hashCode() : 0;
result = 31 result + id;
result = 31
result + (int) c;
return result;

>int result = s != null ? s.hashCode() : 0;


Что это? Почему не int result = int(s) ?
И бля эти 2 строки:

>result = 31 result + id;


>result = 31 result + (int) c;



Тут же тупо переопределяется переменная result
В чем сакральный смысл первой строки метода?
>>642334>>642335
#6 #642334
>>642333
разметкаЛОЛ
#7 #642335
>>642333
Ты вообще что-то сиподобное когда-то тыкал? Ты же синтаксиса не понимаешь, блять.

Нельзя блять просто так привести строку в инт, тем более зачем, когда ты считаешь hashCode? Если она (строка) определена надо взять ее хэшкод, иначе 0, далее, так как здесь используется полиномиальный метод (кажется) хэширования, умножаем на простое число и добавляем хэшкод инта, равный ему самому, записываем в result, домножаем на 31, добавляем хэшкод чего-то что меньше по размеру int'a, видимо char, опять записываем куда надо.
>>642713
#8 #642354
Кто-нибудь разбирается в JavaFX? У меня какая-то негуглящаяся бида, когда я задаю в Scene Builder'e какую-нибудь функцию в поле On Action, то у меня нихуя не работает, даже если объявляю эту функцию в контроллере.
Вот так это выглядит в FXML:
<Button layoutX="201.0" layoutY="148.0" mnemonicParsing="false" onAction="#showS" text="Button" />

Даже не подсказывает ничего, хотя судя по видеогайдам должен предложить создать функцию showS.

IDE у меня IDEA.
>>642357
#9 #642357
>>642354
Все, разобрался, оказывается контроллер не был прописан. Нахуй Идея создает класс контроллера, но при этом в FXML не прописывает его? Ебанутая.
296 Кб, 624x636
#10 #642359
// ----HYPERSQL----

В папке лежат app.java, hsqldb.jar, sqltool.jar, и основа бд.

try
{
Class.forName("org.hsqldb.jdbcDriver");
}
catch (ClassNotFoundException e)
{
// срабатывает эксепшн, что не находит
}

Компилирую так:
"C:\Program Files\Java\jdk1.6.0_45\bin\javac.exe" app.java

Запускаю так:
"C:\Program Files\Java\jdk1.6.0_45\bin\java.exe" app

Надо как-то особо добавлять jar при компиляции?
>>642437
33 Кб, 565x365
#11 #642403
Для яваняшек
#12 #642437
>>642359
Classpath надо указывать.
#13 #642493
>>642217 (OP)
Помоги, анончик.
Лучше начинать с Java, чем с Javascript?
Если да, то почему?
>>642496
#14 #642496
>>642493
Это разные вещи, хочешь ебашить сайтики учи javascript, хочешь ебаться с сервером или android'ом учи java.
>>642515>>654315
#15 #642515
>>642496
Андроиды и сервера пизже, наверно. А востребованность такая же?
>>642519>>642553
#16 #642519
>>642515
Если ты будешь достойным специалистом, то без работы не останешься.
#17 #642553
>>642515
Мне кажется вэб легче освоить и быстрее.
>>642643
#18 #642567
Аноны, есть ли возможность в IDEA смотреть поэтапно как выполняется сам код? Только начал учить джаву и не всегда могу сообразить, каким образом работает решение той или иной задачи, данной в книге.
>>642577
#19 #642577
>>642567
Гугли breakpoint и debug
41 Кб, 1237x676
#20 #642617
Спам-лист не пускает так что сообщение на пикче
>>642645
#21 #642643
>>642553
Мне интереснее не веб.
#22 #642645
>>642617
Смотри статические методы класса Executors. newFixedThreadPool я думаю подойдет.
#23 #642713
>>642335
Что-то уже яснее. Но всё-равно не пойму что делает это переопределение переменной result. Она же попросту переопределяется.
>>642772
15 Кб, 400x331
#24 #642766
Хочу стать джава богом. Очевидно, знаю синтаксис, основы ооп, есть недоопыт написания по учёбе клиент-серверной консольной игры с многопоточностью, ваннаби днс сервера и прочих мелких лаб. Куда дальше мне копать? Хочу запилить форумный движок просто чтобы иметь проект в портфелио. Это нормально будет или на джаве что-то совсем другое пишут? Как развиваться то?
#25 #642772
>>642713
Нет, он переопределяется основываясь на предыдущем значении, ты видишь вообще что там RESULT = 31 * RESULT + xyinia?
>>643415
232 Кб, 1885x1035
222 Кб, 1902x1036
#26 #642829
Почему Fish cannot be resolved to a type?
Читаю Файна, сделал все по учебнику и вот это вылазит.
>>642834
#27 #642834
>>642829
У тебя же Fish не в том package'е.
>>642854
288 Кб, 1904x1041
280 Кб, 1896x1029
190 Кб, 1905x982
#28 #642854
>>642834
Эм, создаю Fish он его туда не пихает, создаю Fish2 - пихает
>>642872
226 Кб, 1892x1032
#29 #642872
>>642854
В итоге с Fish2 все прекрасно работает.
Я не понял, почему он Fish кидает не в default package?
>>642889
#30 #642889
>>642872
Эклипс, что с него взять.
Попробуй создавать класс, кликнув правой кнопкой на этот самый default package. Там где-то в выпадающей менюшке должен быть пункт для создания нового класса.
>>642985
#31 #642907
Если есть сеть компутеров, то как можно сделать им общую базу данных для программы? Или делать через localhost?
>>642937
#32 #642937
>>642907
Разместить СУБД на отдельном сервере или компе.

> Или делать через localhost?


што
>>643043
#33 #642950
Кто знает тонкости языка, вопрос на 2 чая.
Можно ли как-то скормить parseInt'у String вида "123text" без выброса эксепшена? Текст любой и любой длины (например "123 text" тоже пойдет), главное, чтобы сначала шло число и оно распарсилось, а текст проигнорировался.
>>642960
#34 #642960
>>642950
Нельзя. Доставай регуляркой.
>>643013
#35 #642985
>>642889
Тоже самое
#36 #642993
>>642766
Бамп вопросу.
#37 #643013
>>642960
Жаль, спс.
>>643047
#38 #643043
>>642937
А как разместить субдб на отдельном сервере и подключать все компы к нему?
>>643182
#39 #643047
>>643013
я бы сразу увольнял за такие вопросы.
#40 #643049
Еще вопрос по учебнику Файна
Он пишет, что мы можешь использовать myFish.say() чтобы напечатать то, что говорит рыба
Но в самом классе Pet (Супер класс Fish`a) у нас это описано так:
public String say(String aWord)
{
String petResponse = "Ну ладно!! " +aWord;
return petResponse;
}
И поэтому если в Fish написать, допустим myFish.say("Буль") ничего не будет
Тк надо писать String word = myFish.say("Буль-буль");
System.out.println(word);
Я прав? Метод же возвращает значение
>>643054
#41 #643054
>>643049
Да, прав.
#42 #643106
Ребят, в JavaFX надо создавать контроллер для каждого FXML?
Если да, то как быть с тем, что два контроллера должны обращаться к одному и тому же объекту, например к ArrayList'y?
Либо делать объект статичным, либо как?
>>643292
#43 #643182
>>643043
Ставишь на отдельный сервер oracle, postgre или mysql/maria. Проверяешь с удалённой машины, что к нему можно подключиться с помощью клиента этой СУБД. Потом пишешь айпи и порт в url jdbc и подключаешься. Всё что непонятно - в гугл.
#44 #643193
А можно ли как-то сделать в формочке, чтобы меню было слева в колонке, а по клику справа в колонке менялся контент окна. Но не вкладками.
>>643294
#45 #643195
Есть две таблицы, например human и Car. У человека внешний ключ id у машины cid. Чтобы связать их связью один ко многим, нужно в человеке указать JoinColumn(name = "id'), а в car'e JoinColumn(name = "сid') или наоборот?
>>643200>>643834
#46 #643200
>>643195
JOIN ON id.human = cid.car
связанные таблицы внешние ключи гугли сучка.
>>643205
#47 #643205
>>643200
я про hibernate же
>>643211>>643213
#48 #643211
>>643205
ебать даун
#49 #643213
>>643205
Сначала sql представь. Что такое foreign key, что такое primary key, какие из них есть в твоих таблицах, и напиши как ты их джоинишь на обычном sql.
Из твоего поста нихуя не понятно.
>>643218
#50 #643218
>>643213
Один Human может владеть множеством Car. У хумана id внешний ключ, у Машины cid. Короче говоря, когда мы мапим, то в @JoinColumn указываем поле текущей таблицы?
#51 #643230
Во-первых, внешний ключ там только у машины. И в join column в name указывается ключ второй таблицы.
Во-вторых, тебе видимо нужен mappedBy
>>643235
#52 #643235
>>643230
Поясни за mappedBy, если не лень.
#53 #643239
Только изучаю Джаву. Умею в несложный кор, в JavaFX.
Хотел написать что-нибудь с API Вконтакта, но понял, что не понимаю, как это сделать.
Подскажите темы, которые надо гуглить для этого. Спасибо.
>>643242>>643271
#54 #643242
>>643239

> темы, которые надо гуглить для этого


RESTful API (а точнее клиентские библиотеки для них).
#55 #643271
>>643239
Тоже поебываюсь с вк
Начинал с некоторой копипасты кода вот этого господина:
https://gist.github.com/aNNiMON/483434f042fadb397eaa

Если умеешь в javaFX можно нормально вытянуть токен через webView и webEngine(это так, на будущее)
>>643285
#56 #643285
>>643271
Мне только по ссылке на страницу пользователя получать в виде текста его посты. Для этого вроде даже авторизация не нужна, метод открытый.
#57 #643292
>>643106
Контроллеры не обязательно, но без них геморно, а вот как связывать объекты я сам хз.
#58 #643294
>>643193
JavaFX? Конечно можно, но нужно держать ссылку на пэрэнт той хуйни которую хочешь заменить.
>>643593
#59 #643359
С API Вконтакта JSON приходит в виде массива? Если да, то как считывать?
>>643360
#60 #643360
>>643359
В виде строки.
Берёшь такой GSON, Jackson или любую другую подобную библиотеку и считываешь.
>>643363
#61 #643363
>>643360
Использую json-simple, а он мне null возвращает. В чем может быть косяк?
>>643365
#62 #643365
>>643363
Ну то есть простые json отрабатывает, а взятый с VK здоровенный уже нет.
#63 #643366
>>643365
Скинь то, что VK вернул.
>>643381
#64 #643379
>>643365
Неправильно парсишь значит
Возми строку ответа из браузера и попробуй ее в коде конвертировать

Тоже использую json-simple, проблем с vk нет
#65 #643381
#66 #643382
>>643365
JSONParser parser = new JSONParser();
JSONObject object = null;
try {
object = (JSONObject)parser.parse(response);
}catch(ParseException e){
System.out.println("Error to parse json");
return null;
}

response - обычный string
>>643383
#67 #643383
>>643382
Сообщение в исключении что говорит?
>>643385
#68 #643385
>>643383
"Ошибка парсинга"
Только что попробовал твою строку законвертировать, все работет.
return null ток удали, с функции копипастнул
>>643386>>644708
#69 #643386
>>643385
Да не твоё сообщение, а message, который содержится в исключении, брошенном JSONParser'ом.
Скинь стектрейс вообще ( e.printStackTrace() ) -- может, станет понятно, на чём запнулся парсер.
>>643389
#70 #643389
>>643386
А самому? У меня твоя эксепшн не кидает, ну.
>>643391
#71 #643391
>>643389
Епт, сча дошло что ты тому чуваку писал про стектрейс, кусок кода прос я кинул
#72 #643393
String json = (api.getHTML("https://api.vk.com/method/wall.get?user_ids=36031322&domain=baddest_motherfucka_in_universe&offset=0&count=1&extended=0&v=5.44"));
JSONParser parser = new JSONParser();

Object object = parser.parse(json);
JSONObject jsonObject = (JSONObject) object;
System.out.println(jsonObject.get("count"));

Вот код. Выдает с него null. Чо не так?
>>643395
#73 #643395
>>643393
Потому что корневой key это response, ты хоть на ответную строку смотрел?

((JSONObject) jsonObject.get("response")).get("count")
>>643398>>643424
#74 #643398
>>643395
Спасибо :*
#75 #643402
Аноны, подкиньте идею проги чтобы отработать навыки с annotations, reflection
>>643404>>643418
#76 #643404
>>643402
Подгрузчик модулей из внешних jar-файлов.
Какой-нибудь Dependency Injection фреймворк.
>>643410
#77 #643410
>>643404
А чего-нить повеселее?

Еще такой вопрос к анонам:
Можно ли хранить картинки в базе данных, насколько оправданна такая практика?
>>643418
#78 #643415
>>642772
Только сейчас сообразил. Теперь всё ясно.
#79 #643418
>>643402
Еще можно ORM.

>>643410

> Можно ли


Можно блобами (бинарниками как есть), можно сериализовывать, например, в base64 и хранить в как текст.

> насколько оправданна такая практика


Если тебе лень и файлы маленького размера (например, thumbnails), то да. Иначе придется сами файлы хранить в другом месте, а в БД - только метаданные.
#80 #643424
>>643395
Я понял как добраться до count, но так и не понял как добраться до поля text. Пытался делать много вклаживаний метода .get(), но выдает NPE.
Халп
>>643428
#81 #643428
>>643424
Смотри на скобки, {} знач содержит jsonobject, если [] это jsonarray
В том запросе чтобы вытянуть текст:
JSONObject temp1 = (JSONObject) jsonObject.get("response");
JSONArray tempArray = (JSONArray) temp1.get("items");
temp1 = (JSONObject) tempArray.get(0);
JSONArray innerArray = (JSONArray) temp1.get("copy_history");
И тогда уже с этого массива можно вытягивать объекты, в которых будут ключи с текстом

Для таких огромных jsonov думаю хорошо подойдут всякие визуализаторы, сразу понятно будет что откуда брать. Я пока работаю с объектами попроще, и так все видно
>>643429>>643431
#82 #643429
>>643428
Вот оно что. Анон выше обманул меня, сказав, что в JSON ответах от API Вк нет массивов, я даже и не думал о них почитать. Сейчас попробую.
#83 #643431
>>643428
А как с массива элементы таскать? У него размер 1, я не понимаю как его перебирать. Посмотрел исходники JSONArray, наследуется от ArrayList, методов подходящих там не нашел.
>>643433
#84 #643433
>>643431
Метод get(index) есть, метод size() тоже имеется, что еще надо?

Щас глянул в список методов, там есть и iterator(), а значит можно и foreach цикл использовать
>>643436>>643437
27 Кб, 813x328
#85 #643436
>>643433
Методы есть, вот только size() выдает 1, хотя там масса всего.
C iterator() тоже беда.
>>643492
#86 #643437
>>643433
Разобрался. Надо было итоговый массив запихнуть обратно в объект, тогда все хорошо.
Либо я сонный, либо работает это через жопу, мой внутренний перфекционист подгорает от того, что для простого считывания нужно столько временных переменных.
#87 #643438
Осталось придумать, как извлекать не текст одного поста, а сразу 100.
Либо делать 100 запросов к API, либо писать алгоритм считывания 100 полей текста из одного запроса. Второй вариант какой-то быдлокодерский.
#88 #643439
>>643438
первый*
#89 #643440
>>643438
Но вроде механизм я понял.
Всем, кто помогал, спасибо. Спокойной ночи. Завтра продолжу глупые вопросы.
#90 #643452
>>642766
То что нужно дня портфолио. На нем как раз и вникнешь в процесс создания приложений на джава. Гугли spring, hibernate, spring security и используй их у себя
#91 #643492
>>643436
Iterator<JSONObject> iterator.
#92 #643497
>>642766
Для десктопного клиент сервера -- Java NIO и Patterns of Software Architecture.
Для web-стека -- то, что уже посоветовали (Spring, ORM).
64 Кб, 691x499
#93 #643535
Задали семестровое задание на выбор. Взял крестики-нолики с парой особых условий:
1. Игровое поле состоит из NхN клеток (число 19<N<41 задается в настройках игры).
2. Если линия, соединяющая одинаковые знаки замыкается (возможно соединение по любой из сторон клетки или по углам клеток), то знаки расположенные внутри – меняются на знаки, из которых составлена линия и другой игрок получает право двух ходов.
3. Выигрывает тот игрок, у которого знаков в конце игры больше.
4. По ходу игры программа должна вести протокол игры, в который будут заноситься информационные сообщения о сделанных ходах противников.

Для того, чтобы нормально код написать, нарисовал uml диаграмму на основе mvc. Так как впервые рисую по mvc, то прошу отнестись с пониманием и указать на ошибки.
#94 #643583
Аноны, есть объект без внутреннего состояния, с кучей методов, которые преборазут строки, переданные в параметрах и возвращают результаты. Будет ли хуйня, если все эти методы сделать static и к ним будут обращаться сразу куча потоков? Или надо каждому потоку свой уникальный объект давать?
>>643587
#95 #643587
>>643583
Если типа утилитный класс (те нет даже статических полей и первым параметром идет обрабатываемая строка), то норм.

В адекватных язык для этого есть специальные средства (экстеншен методы, имплиситы).
>>643590
#96 #643590
>>643587
Да, чисто утилитарный класс, static поля есть, но все final. Я не очень понимаю что происходит при вызове метода, каждый поток будет иметь свою копию локальных переменных?

И что за адекватные языки кстати?
>>643598
#97 #643593
>>643294
Нет, не FX, обычная Java SE дескоп.
#98 #643596
>>643535
Какие крестики нолики? Это Точки.
>>643674
#99 #643598
>>643590
Хуйни не будет. У потоков общее только пространство памяти, но не пространство операций (т.е. нет такого, что поток попросил у объекта выполнить метод, а тот говорит, что занят, т.к. выполняет этот же метод по просьбе другого потока). Собственно, вся ебля в многопоточности сосредоточена на упорядочивании доступа к памяти из разных потоков.
>>643612
#100 #643612
>>643598
А что насчет локальных переменных?
static int modifHuita(int huita){
int local = huita + 3;
// промежуточные операции
return local;
}
Тут не будет corrupta, если другой поток войдет в метод, пока первый не вернул результат?
В книгах пишут что все методы находяться в одной таблице т.е. если создавать миллиард объектов, то не будет миллиард команд, отвечающих за методы в определении класса. А вот насчет локальных переменных там хуй что поясняют, храняться они в таблице метода или каждому объекту дается своя копия?
>>643619
#101 #643614
Посмотрю туториал по Java FX, спасибо.
#102 #643619
>>643612
Локальные переменные хранятся в стеке, а у каждого потока свой стек
>>643637
#103 #643637
>>643619
Вот теперь загадок мироздания не осталось.
#104 #643663
>>643438
У ВК кажется есть batch-request
#105 #643674
>>643596
Окей, точки.
>>643535
Никто новичка что-ли в гавно не макнет, указав на ошибки?
>>643691
#106 #643689
Поясните, посоны.
Новый объект в памяти создается только когда я пишу new ObjectType()?
То есть если у меня есть
String string = new String();
А я пишу такой
String string2 = string;
То у меня объект в памяти остается тот же самый, просто на него теперь есть две ссылки?
>>643780>>643877
#107 #643691
>>643535
>>643674
С архитектурной точки зрения проще некуда. На каждый клик игрока вычисляешь дельту (сколько ребер / многоугольников создано), применяешь ее к текущему состоянию и рендеришь.
Куда важнее алгоритмы вычислительной геометрии и теории графов - в этом и суть курсача. Например нахождение циклов, вхождение одного многоугольника в другой, вычисление площади многоугольника.
>>643752
#108 #643752
>>643691
бля, как сложно, графы, дельты, мвп, че нельзя просто хуяк хуяк и в продакшн?
#109 #643780
>>643689
Да, именно так.
42 Кб, 858x620
#110 #643820
Почему элементы к слою не добавляются. Пробовал и элементы и коллекции и все методы, что там были из addAll().
>>643821
#111 #643821
>>643820
Потому что addAll на коллекциях работает не так.
>>643825
#112 #643825
>>643826
#113 #643826
>>643825
Ну тогда показывай ошибку из IDE, мы тут тебе не телепаты.
>>643843
#114 #643834
>>643195
class Human {
private Integer humanId;
@OneToMany
@JoinColumn(name = "human_id")
private List<Car> cars;
}
24 Кб, 678x412
#115 #643843
>>643826
Просит какой-то там Node[] элементы.
Вот так:
Node[] elements = null;
layout.addChildren().addAll(elements);

не показывает ошибки. Но я не знаю, как лейбел и кнопку превратить в этот Node[], array list что ли создавать, но по идеи не должно быть такого, это же всего лишь кнопка и лейбел, добавляемые в слой формочки FX
>>643845
#116 #643845
>>643843
А все, у меня просто лейбл не из того пакета импортировался.
#117 #643877
>>643689
Если быть точным, то ссылка создаётся, которую ты объявил. Весит 4 (8) байт.
209 Кб, 1035x967
#118 #643896
Не уверен, что я делаю так, как надо.
Настраиваю build.gradle, чтобы он с Javafx собирался Нужно ли это вообще? как тут сказано https://jaxenter.com/tutorial-a-guide-to-the-gradle-javafx-plugin-105730.html, используя https://github.com/bmuschko/gradle-javafx-hello-world/blob/master/build.gradle
Вылетает error. Гугл особо не помог, java_home на 1.8 jdk указывает, gradle последней версии.
>>643962
#119 #643962
>>643896
Тебе красным языком сказано - проблемы в васяноплагине. Попробуй адрес более старой версии подставить, или более новой:
http://repository-javafx-gradle-plugin.forge.cloudbees.com/snapshot
>>644002
409 Кб, 478x1431
#120 #643964
Эхблять, прямо сейчас сел учить джаву, СЧАСТЬЕ ТО КАКОЕ, БРАТЦЫ.
Пытался программировать на крестах лет в 16, быстро это дело бросил и решил, что программирование это не мое. Но джава - это словно второе дыхание. Не могу удержаться, чтобы приступить к самому кодингу, вместо изучения книжек. Не исключено, что у меня вернется потенция, вырастит член и вернется бывшая. Джава - решение всех проблем.
#121 #643981
Посоны, как лучше отлавливать Java Heap Space в системе, которая отваливается после 2-часов выполнения одной функции?
>>643993
#122 #643988
>>643964
В 16 у тебя была свобода менять приватные поля по их смещение относительно указателя на объект, а ты её променял на рабство и язык который даже рядом с современными плюсами выглядит говном из прошлого десятилетия на COBOL.
>>643991>>643998
#123 #643990
>>643964
Ничего не вернется.
#124 #643991
>>643988
В яве тогда можно приватные поля менять через рефлексию.
>>643992>>644007
#125 #643992
>>643991

> тогда


тоже
#126 #643993
>>643981
Делай heapdump и смотри анализаторами (софт типа Visual VM и подобные).
#127 #643998
>>643988

>менять приватные поля



>полное нарушение принципа инкапсуляции


>плюсы хороший язык

>>644007
#128 #644002
>>643962
Хуй знает, как заставить это работать. Впизду gradle, буду на maven собирать.
#129 #644007
>>643998 -> >>643991

> 2016


> ООП


Сеттеры/геттеры иди генерируй.
>>645031
#130 #644018
>>643964
Что же с тобой будет когда ты попробуешь Clojure/Scala/Kotlin ?, наверное свихнешься от счастья.
91 Кб, 503x711
sage #131 #644040
#132 #644080
>>644040
Обидно
#133 #644305
>>644040
Поебать. На реальных проектах перерасходот памяти не так велик как на хэллоуворлдах.
P.S. Почините уже нижнего петуха, не скомпилируется же!
>>644314
#134 #644314
>>644305
А ведь еще можно одно kokoko убрать :) правда <> останутся
#135 #644317
>>644040
1С бухгалтер порвался.
#136 #644377
Подумываю освоить чего-нибудь из новых языков на java платформе.

Чем хороши эти ваши scala, kotlin, clojure? Нет, вики я читал. На каких конкретно задачах они дают преимущество? Пишу не холивара ради, а просвещения для.
>>644490
#137 #644490
>>644377
Kotlin - это та же джава, только засыпанная сахаром. Теоретически, делает код чуть чище + приятнее писать. Так что - на любых задачах.
>>644527
#138 #644527
>>644490
Ты не понимаешь о чем говоришь, с таким же успехом ты мог и Scala (любой JMV язык) назвать сахаром к Java.

Kotlin на 80% схож по синтаксису со Scala (за исключением имлиситов и паттерн-мачинга)
#139 #644590
Имеется класс с функцией которая возвращает SettableFuture на битмап (getImage) и функцией которая заполняет это будущее (addImage). Проблема в том, что выполнение кода в этих функциях (которые выполняются в отдельном потоке, и создаются через менеджер потоков) не доходят до конца, то есть когда я делаю пошаговую отладку в один момент курсор просто нахер пропадает и всё. Возможно ли такое, что каким-то образом поток завершает своё выполнение и по этому функция не выполняется до конца?

http://pastebin.com/d9mkUiTy
>>644654
#140 #644654
>>644590
Ты там NullPointerException не получаешь случаем в строке 66? Его ты не ловишь, так что, вполне возможно, оно проваливается к caller'у, который хуй знает где.
>>644655
#141 #644655
>>644654
Всмысле, в строке 66 получаешь null, а там, где пропадает курсор -- NPE.
>>644740
#142 #644665
>>644527
То есть там есть макросы и система типов?
>>644748
#143 #644708
>>643385
проиграл
#144 #644740
>>644655
Не, в том то и дело, что не вылетает никаких эксепшонов. Просто всё зависает нахрен, как-будто поток уходит в блокировку.
#145 #644748
>>644665
Что ты понимаешь под макросами? А система типов конечно есть.
>>644752
#146 #644752
>>644748

> Что ты понимаешь под макросами?


Под макросами я понимаю, как ни странно, макросы
google://scala macro

> А система типов конечно есть.


Лол, толстота.
>>644777
#147 #644777
>>644752 >>644527

> Kotlin на 80% схож по синтаксису со Scala


Я имел ввиду что в 20% входят другие отличия кроме маченга и имплиситов :)

> там есть макросы


Забавно что ты спросил, на reddit тоже вчера этот вопрос задавали.
Официально пока не планируется тк большие сомнения в необходимости, а компилятор это сильно усложнит.
Видимо это одна из причин почему у Scala относительно-медленный компилятор и нет нормальной IDE

> система типов


1) Все типы разбиваются на nullable и nonnullable (чего кстати нет в Scala, там же optional)
2) Все типы коллекций разбиваются на два типа: изменяемые и не изменяемые
и на уровне компилятор включается ограничения на правильное использование.
А уже на уровне байткода они компилируются в обычные java коллекции.
>>644780
#148 #644780
>>644777

> нет нормальной IDE


Манямирок

> 1) Все типы разбиваются на nullable и nonnullable (чего кстати нет в Scala, там же optional)


> 2) Все типы коллекций разбиваются на два типа: изменяемые и не изменяемые


> система типов


Ох, лол. Всё понятно с тобой. Посмотри хотя бы shapeless
>>644813
#149 #644813
>>644780
Спасибо чувак, но оставь свои 6 MB рантайма у себе.
Да и зашел бы ты в тред по скале, а то там не одного сообщения с прошлого месяца
>>645255
#150 #644921
При всем уважении к Котлин, Option из скалы мне кажется более общим решением. В плане удобства использования однозначно ответить не могу, хз
121 Кб, 610x720
#151 #644994
Зачем в джаве нужен static? Вот с final все понятно, он делает переменную константой. А static нахуя?
#152 #645028
Посоны, всю жизнь баловался Java SE на уровне написания простых университетских лаб, но тут вдруг предложили опробовать свои силы на поддержке готового проекта на "Ява + томкат + спринг". Первый вопрос: что собственно ставить то лучше? Какую IDE и все остальное? Eclipse? А то я никогда дальше Idea не выбирался. И в глаза все эти ваши Java EE не видел...
>>645082
#153 #645031
>>644007
Ты троллишь? Если нет, то объясни, пожалуйста, за эту "не-ООП" концепцию.
>>645089
#154 #645044
>>644994
Чтобы обращаться к полю или методу класса не создавая объект этого класса.
#155 #645049
>>644994
Что константы делать и функции по типу void main(String[] args)
#156 #645061
В общем, завершил свой первый калькулятор(почти).
Без мам, пап и кредитов.

Что хочу сказать. Сделал это сам по прочитаной/обдуманной/опробованной инфе.
Ну чё-то ковырял ковырял, учился тыкать и сам смог.

Когда пытался делать калькулятор по учебнику Файна - нихуя не понимал. абсолютно блять.

В итоге посмотрел видеолессоны по GUI, JFrame и JOptionPane и шустро допер как всё сделать самому.

Вопрос знатокам: это Файн пидорас? Он так мутно пишет, что я нихуя не въехал почти.

Или я пидорас, который может учиться только на своих ошибках и всё такое

Алсо, перекачусь на другой учебник
#158 #645082
>>645028
IDEA зэ бест, но если каких-то плагинов будет не хватать для комюнити эдишена прийдется ебаться с эклипсом. Но скорее всего хватит IDEA.
>>645186
#159 #645089
>>645031
Я думаю он про иммутабельность объектов, тогда сеттеры не нужны. А может ему вообще бобы не нравятся.
#160 #645133
Кто более живой в плане GUI. JavaFX или Swing? Вроде бы JavaFX, но мне показалось что Ораклу на нее довольно таки похуй. Или GUI на java вообще от лукавого и его нужно избегать всеми способами?
>>645147>>645177
#161 #645147
>>645133

> JavaFX или Swing


Возьму эфыкс точенный, срублю свинг дроченный.

> на нее довольно таки похуй


Смотря что ты под этим понимаешь.

> нужно избегать всеми способами


Ага, лучше на сисярпе или (о ужас) на крестах.
#162 #645177
>>645133
Наоборот swing уже давно не поддерживается в отличие от java fx.
#163 #645186
>>645082
Так вроде ж Spring только для Java EE подходит, которую community версия не поддерживает, нэ?
>>645217
#164 #645217
>>645186
Ну вообще да, короче из вариантов у тебя ебститсь с эклипсом, использовать ломанную IDEA или развести начальство на IDEA.
>>645228
#165 #645228
>>645217
Или просто спокойно разрабатывать в IDEA CE, поскольку Spring - это просто библиотека. Какая, нахрен, разница, поддерживает её идея или нет?
#166 #645230
трусь писечкой о трубы в пятирочки пяткой шлепаю жаву мне норм)))
#167 #645255
>>644813
Ему про систему типов, а он про какой-то рантайм кукарекает. Поссу маневрирующему петуху в рот, пожалуй.
>>645289
#168 #645282
Анон, вот есть String, а у него есть метод split. Разделяет по указанной подстроке строку в массив строк.
Можно ли как-то сделать, чтобы данный метод разбивал по нескольким подстрокам?
Опишу задачу -- есть текст, хочу из него вынуть все слова, вынимать их вместе с знаками препинания не хочется.
Есть идеи?
>>645290
#169 #645289
>>645255
А ты тот еще копрофил, сать себе в рот читай документацию
>>645325
#170 #645290
>>645282
Ты опять выходишь на связь, мудило?
1. str.split("[.,;\\s]+")
2. StringTokenizer
3. Apache Commons Lang StrTokenizer
4. Взять нормальную библиотеку для обработки естественных языков, там точно должен быть токенайзер
>>645329
106 Кб, 873x605
#171 #645305
Поясните, когда в файле циферки записаны в одну строку то не работает вывод в обратном порядке. Если записать в строку по цифре то всё норм.
>>645307>>645308
#172 #645307
>>645305
Тебе s = in.readLine() вообще ни о чём не говорит?
>>645311
#173 #645308
>>645305
потому что .readLine() считывает строку. Если у тебя цифры в одной строке, то в ls.add(s) в качестве s придёт "1 2 3 4 5 6" и всё. Соответственно, это будет единственный элемент в списке, который при обратной итерации и выведется один.
Короче, переписывай алгоритм парсинга файла.
>>645311
#174 #645311
>>645307
>>645308
Ага, не учел

>то будет единственный элемент в списке


Спасибо.
#175 #645325
>>645289

> пок


Ясно
#176 #645329
>>645290

> Ты опять выходишь на связь, мудило?


> 1. str.split("[.,;\\s]+")


> 2. StringTokenizer


> 3. Apache Commons Lang StrTokenizer


))) https://github.com/sirthias/parboiled2
#177 #645344
Хочу освоить тему многопоточности. Нужна какая-то задача. Нихуя не могу придумать. Анон, придумай за меня.
>>645382
#178 #645382
>>645344
Стример торрентов. Тоже такой пишу, чтобы освоить akka-streams
#179 #645435
Почему

>out.writeInt(3);


Записывает в файл пустую строку?
При этом

>System.out.println(in.readInt());


В консоль выводит как надо
#180 #645464
Анон, написал прожку с определенным алгоритмом, которая на вход принимает ArrayList строк.
При определенном увеличении массива программа просто наглухо зависает, долго ждал, но ошибки никакой не было.
В чем может быть проблема? Как отловить баг? Дебагерром нашел цикл, на котором все виснет, но он простой и по сути ничего не делает, что могло бы вызывать ошибку.

Вот такой цикл:
for(int i=0;i<array.length;i++){
if(array!=null) addKeyValue(array);
}
>>645473
#181 #645473
>>645464
А в чём прикол на каждой итерации проверять массив на null и пихать его куда-то? Мб ты это с элементами массива проделывать? Тогда надо работать с array:

for(int i = 0; i < array.length; i++) {
if(array[] != null) addKeyValue(array);
}
>>645475>>645477
#182 #645475
>>645473
Мне кажется, что ему макаба порезала индексы.
>>645481
#183 #645477
>>645473
for(int i = 0; i < array.length; i++) {
if(array != null) addKeyValue(array);
}
фикс
>>645479
#184 #645479
>>645477
ага, хуикс
#185 #645481
>>645475
Да, наверное. Тогда пусть через pastebin код показывает.
>>645486
#186 #645486
>>645481
Ну вопрос все равно ребром стоит, хули делать, если программа тупо виснет? Даже эксепшена не бросает.
>>645488>>645490
#187 #645488
>>645486
Значит, addKeyValue у тебя метод херовый. Больше нету причин.
#188 #645490
>>645486
Типа у меня добавляется в ArrayList 13 элементов, а потом с ними делаются дела. А если добавить 14 элементов, все идет по пизде именно на этом цикле.

Внутри цикла функция, наверное надо было ее писать.
Она ничего особенного не делает тоже:

private void addKeyValue(String s) {
if(!rating.containsKey(s)) { rating.put(s, 1); }
else {rating.put(s, rating.get(s)+1);}
}
>>645518>>645731
#189 #645518
>>645490
Раскидай по циклу и addKeyValue println'ы. Типа перед вызовом addKeyValue, после вызова, перед и после условия в методе. Ну ты понял.
#190 #645731
>>645490
Таки починил.
Теперь у меня есть мой первый уникальный софт -- прога для подсчета топ-10 слов в последних 100 постах пользователя\группы в вк.
Пока что без авторизации, интерфейса и обработчика исключений.
3 Кб, 220x163
#191 #646070
Анончики только неделю как учу джаву по учебнику Head First Java. Дошел пока до 200 страницы (работа не позволяет быстрее учить) и чувствую себя полным идиотом. Чем дальше идет процесс, тем меньше я начинаю понимать, попутно забывая то, что уже проходил, вынуждая возвращаться обратно. Доходит до того, что могу топтаться на одной странице по минут 20.
Так вот вопрос: это я безнадежный дурачок или все через это проходили и дальше будет проще?
#192 #646074
>>646070
Ты код-то пишешь вообще? Или ты решил, что обучение это сидеть читать книгу и нихуя не делать по ней?
>>646076
#193 #646076
>>646074
Пишу, конечно. Делаю все задачи(даже просто перепечатываю строки кода, который вырван из контекста, чтобы объяснить определенный момент), которые в книги идут в конце главы и в самой главе.
>>646077
#194 #646077
>>646076
Тогда проблем быть не должно, наверно ты что-то проебал
>>646079>>646399
22 Кб, 363x471
#195 #646079
>>646077
Видимо, я таки безнадежный дурачок.Не то, чтобы меня это остановило и я пошел удалять IDE да книги, но очень обидно
>>646399
#196 #646107
Написал на JavaFX реализацию игры точки, какой использовать инструмент, чтобы прилепить к нему мультиплеер?
>>646108>>646251
#197 #646108
>>646107
Очевидно что писать сервер с нуля (на Netty, например).
#198 #646249
На каких фреймворках на жаве пишутся игры? Можно ли через обычную жаву взаимодействовать с видео и аудио и тут нужно просто пакеты доподключать или какой-то фреймворк?
>>646278
118 Кб, 500x609
#199 #646251
>>646107
КАКОЙ ЕЩЕ ТОЧКИ?
#200 #646278
>>646249
Если именно движок, то по сути только libgdx, а если просто либа - lwjgl.
199 Кб, 1920x1080
221 Кб, 1920x1080
#201 #646284
Аноны, помогите. Почему код не работает?
>>646290
#202 #646290
>>646284
Почини конфигурацию запуска, у тебя указано, что класс в котором main называется Car. Вон даже крестик красный сверху слева от кнопок Run и Debug.
>>646293
#203 #646293
>>646290
Добра тебе
#204 #646317
Нужно еще написать простецкий AI к игре точки
Если кто-то в этой теме варится, направьте в какой стороне копать, под этим я подразумеваю ссылок на статьи или блоги и прочие вещи.
>>646433
#205 #646385
Вот хендлер прикручен к сцене, мы можем получить сцену (объект) через хендлер, от сцены мы можем получить стейдж (объект), которому она принадлежит, стейдж (объект) принадлежит гейм-контроллеру (объект).
Как получить гейм-контроллер?
#206 #646399
>>646070
>>646079

Не слушай этого пидора ->
>>646077

Все обучение программированию полностью состоит из непонятной хуйни, те части-которые ты не понимаешь просто пропускай, или дальше. Позже пойдет некое понимание ранее непонятных вещей, но с другой стороны. Некоторые книги я прочитываю не один раз, и часто приходит понимание ранее не понятных вещей
>>646474>>646756
#207 #646433
>>646317

>точки


точки говоришь?
#208 #646436
>>646070
Это абсолютно нормально, все так учили. Главное не опускай руки ни за что. Понимание придёт потом.
>>646474
27 Кб, 396x385
#209 #646474
>>646399
>>646436
Спасибо, обнадежили.
>>646538
#210 #646538
>>646474
Именно этот я/п имеет относительно высокий порог вхождения, и его допиливали/перепиливали без малого 20 лет.
Так что неудивительно.
>>646555>>646760
#211 #646555
>>646538

>Именно этот я/п имеет относительно высокий порог вхождения


Чего?
>>646719
#212 #646606
нафаня просит о помощи
как начать писать все эти тесты и все эти JUnit, что почитать на эту тему? технически то более менее понятно, а вот когда их писать и сколько, бест практисы не понял
хелп ми, жава-брат
>>646613
#213 #646613
>>646606
Видишь метод для публичного API - пиши тест.
По количеству - умеренно. Средний случай + несколько крайних. + на эксепшены, если они должны выдаваться.
>>646617
#214 #646617
>>646613
спасибо, брат!
8 Кб, 806x228
9 Кб, 485x236
#215 #646631
принимайте ньюфага
1 пик - код
2 пик - неизвестная ошибка при javac
что это и что делать? где ошибка в коде?
>>646635>>646654
#216 #646635
>>646631
Файл должен называться как класс.
>>646650
#217 #646650
>>646635
не, всё равно
>>646651
#218 #646651
>>646650
Попробуй его назвать Main
#219 #646654
>>646631
Слушай может у тебя что-то с кодировкой? Винда же.
>>646656
#220 #646656
>>646654
какую указывать? utf-8?
>>646659
#221 #646659
>>646656
Да, возможно переводы строк надо поменять.
24 Кб, 500x71
#222 #646665
Читал тут Эккеля и взлольнул
#223 #646666
Взял
>>646675
#224 #646675
>>646666
на ротешник?
#225 #646719
>>646555
Ньюфагов
#226 #646756
>>646399

> Все обучение программированию полностью состоит из непонятной хуйни,


Манямирок. Начал программировать в 12 лет с C++, тем не менее всё сразу было понятно. Единственное что на самом деле сложно понять без опыта, это какой инструмент для чего лучше подходит, и в каком стиле лучше писать код (потому что на эти вопросы нет однозначного ответа).
#227 #646760
>>646538

> Именно этот я/п имеет относительно высокий порог вхождения


Джява сделана специально для низкого порога вхождения, чтобы любой обосранный индус мог писать на ней круды.
>>646897>>647018
97 Кб, 715x654
#228 #646833
Дорогие, я тут нарвался на переполнения стека. Что делать? Тупенький я
>>646835
#229 #646835
>>646833
бесконечная рекурсия
>>646836
33 Кб, 400x300
#230 #646836
>>646835
Ах, да, я вроде понял.
#231 #646897
>>646760
Выше чем ,например, у шарпа или любого языка с динамической типизацией. А крудошлепством можно заниматься и вообще без каких-либо знаний.
>>646962>>647017
#232 #646962
>>646897

> любого языка с динамической типизацией


Манямирок
>>647017
#233 #647017
>>646897

> Выше чем ,например, у шарпа


Таки нет, C# как язык выразительнее - значит сложнее.
>>646962
Кроме функциональных.
>>647038>>648916
#234 #647018
>>646760

>Джява сделана специально для низкого порога вхождения


Джавараша начитался? Иди-ка ты нахуй.
>>647023>>647044
#235 #647023
>>647018
поясните ньюфане за Давараш? Говно?

мимо-ньюфаня
>>647032
#236 #647027
>>646070
У меня было также. Терь я рубимака лель.
#237 #647032
>>647023
Говно, с картинками для умственно отсталых.
#238 #647038
>>647017
Откуда пошёл этот миф? Какая-нибудь скала значительно легче всей этой пхп/жс/руби/питоно дристни, хотя бы уже потому, что там нормальные подсказки IDE есть. А джяву и шарп даже дебил может освоить.
#239 #647044
>>647018
Нет, просто это изначальный девиз языка. Держать его ПРОСТЫМ, чтобы даже дебильный срущий на улице индус мог осилить. А ещё к ней прилагаются говнопаттерны уровня AbstractSingletonProxyFactoryBean, чтобы индус писал всё единственно дозволенным путём.
>>647052
#240 #647048
>>647038

>Откуда пошёл этот миф?


Похоже, что из-за системы типов, дженерики там, List<List<T>> и так далее.
>>647052>>647056
#241 #647052
>>647044 >>647048
А если с ними язык остаётся простым, то пых с пифоном ещё проще, типа бейсика, по ходу.
>>647056
#242 #647056
>>647048
>>647052
Но ведь это только упрощает разработку. На динамике ты не знаешь, что откуда берётся, остаётся либо пролистывать тысячи строк лапши, чтобы это понять, либо копировать код из документации (если она есть) и гугла и надеяться, что он сработает. Ах да, и ещё хуйня уровня http://wtfjs.com/
>>647093
#243 #647072
>>647038
Хуяк, хуяк, 2 месяца - и в продакшен, хуле. Каждый может.
А вы - лохи ленивые, я через год уже сеньером стал, а через полтора - заебало, работать на себя захотел. Уехал в Гоа, на пляже с макбуком сижу под пальмой, 3 штуки баксов в месяц.
>>647073
#244 #647073
>>647072
Этот ебанулся, давайте следующего.
#245 #647089
>>647038
зис. жава после пхп мне вообще легкой, как небо, кажется. Нормальные исключения, нормальные типы, нормальная иде, нормальные пакеты вместо дрисни-фреймворков.
>>647091>>647734
#246 #647091
>>647089
но это в дескопе. веб делать на жаве я бы не стал, ибо лень то же самое осваивать, если пхп есть.
>>647097>>647183
#247 #647093
>>647056
как же точно сказано
#248 #647097
>>647091

> если пхп есть


Ящитаю, что в 2016 году PHP следует знать только из-за огромного количества популярных CMS для всех случаев жизни, иначе вообще нет причин с ним связываться. Если так нравится динамичная дрисня, следует давно уже пересесть на Python/Django и Ruby/ROR. Хотя вон даже рубисты-на-колесиках теперь перекатываются в Elixir.
>>647166>>647897
#249 #647166
>>647097
А как же нода братюнь если нужна динамичная дрисня?
#250 #647183
>>647091

>веб делать на жаве я бы не стал, ибо лень то же самое осваивать, если пхп есть.


Джява не предназначена для веба, там нацеленность на тырпрайз.
Зато есть ультра-винрарная скала, можно писать даже фронтенд на ней.
>>647234
13 Кб, 559x85
#251 #647221
>>647234
#252 #647234
>>647183
На Java можно делать нормальные сервисы для этого вашего веба.
>>647221
Чтоэто?
#253 #647244
Что скажите по сервису Java Rush?
Пробовал вариться во всем от делфей до руби. Далеко не заходило. То западло, то запои сезонные. Тут нашел этот сервис. Вроде ништяк, и теории немного нудной и практики хватает. Вот решил советов мудрых спросить - стоит ли продолжать? Или есть какие-то аналоги, где можно с нуля яву вкурить?
Инбифо : книги. Но только если там совсем не нудизм.
>>647250
#254 #647250
>>647244
Я просто настаиваю, чтоб ты оформил их подписку.
Ты, конечно, все равно ничему там не научишься, но хоть деньги пойдут не на бухло, а в карман джаварашевцев. Авось на таких, как ты, и наскребут на нормальный курс.
#255 #647289
Аноны, накидайте советов и годных книг, желательно на русском, по Java. Только начал изучать, умею прогать на C/C++.
>>647294
283 Кб, 340x469
#256 #647294
>>647289

> на крестах ебаться умеет, а читать ориджинал посты - нет.

43 Кб, 322x289
#257 #647304
есть вот такой код:

ImageView ava = (ImageView) view.findViewById(R.id.avatarka);
ava.setImageURI(Uri.parse("https://pp.vk.me/c629127/v629127625/2038f/7n8YdB8cIUY.jpg"));

выдает вот такую ошибку:

I/System.out: resolveUri failed on bad bitmap uri: https://pp.vk.me/c629127/v629127625/2038f/7n8YdB8cIUY.jpg

ЧЯДНТ ? пикрандом
>>647351
39 Кб, 683x728
#258 #647330
Ребята, в чем проблема? Просто перепечатал код из 2-ого тома Хорстмана.
>>647331
#259 #647331
>>647330
Ткни File-Project Settings. У тебя там будет Language Level или что-то такое. Стоит, вангую, Java 6. А такую хрень можно писать в Java 7+.
>>647334
#260 #647334
>>647331
Спасибо, анон, помогло.
#261 #647351
>>647304
Дурачек ImageView может открывать только локальные файлы (file://), он не умеет из из вэба качать.

А вообще пиздуй в /android тред
>>647356
11 Кб, 870x151
#262 #647356
>>647351
лучше бы подсказал как правильно. Я ведь учусь только. Чего ругаешься. на хабре прочитал что можно http://habrahabr.ru/sandbox/42926/
#263 #647532
Подскажите есть ли в java страндартные средства транслитерации?

Или как настроить ебаный mySQL в юникод.
>>647670
#264 #647658
Анон, поясни за processing.
Прохожу на coursera по жабе курс, они там вместо свинга или JavaFX юзает его. А я впервые вообще услышал о нем. Никому не нужное говно или сойдёт?
#265 #647670
>>647532
При соединении через JDBC я использовал магические параметры, вычитанные из документации Connector/J: jdbc:mysql://localhost:3306/skipy?useUnicode=true&characterEncoding=utf8

изучай http://www.skipy.ru/technics/encodings_webapp.html#db

В свойствах базы проверь Collation - utf8...
61 Кб, 604x453
#266 #647734
>>647089
Для таких, как ты, кто думает, что основные сложности языка в синтаксисе, пишут книжки а-ля "Java для тупых уебков" и "Освой с++ за 12 дней". Только что-то не встречал таких я, кто бы хотя бы до джуниора дошел, читая только эту макулатуру.
>>647901>>648662
#267 #647897
>>647097
в пхп удобные фреймворки специально для веба, это плюс. а питон устарел, мне кажется, хотя руби из хипстерского интереса можно ковырнуть.
#268 #647901
>>647734
шта? где я пишу про книги?
#269 #648043
Поясните совсем ньюфагу - годится ли Ява для бэкенда?
>>648046
#270 #648046
>>648048
#271 #648048
>>648046
а какие еще есть альтернативы яве в этом плане?
это был последний вопрос, я уже съебываю
>>648069
#272 #648069
>>648048
C# и Scala.
#273 #648381
javaFX
хочу заполнить choiceBox который прописан в fxml файле
я так понял что надо что то прописать в контолере типа этого ( кусочек fxml файла fx:id="choiceFioldSize")
public ChoiceBox choiceFioldSize = new ChoiceBox(FXCollections.observableArrayList(
"First", "Second", "Third"));
но что дальше делать хз
>>648458
#274 #648391
Какую книжку по спрингу почитать для старта?
>>648400>>648406
#275 #648400
>>648391
Spring in Action
Примеры и документацию на офсайте
>>648462
#276 #648406
>>648391
Spring Cookbook, базарю.
>>648462
#277 #648458
>>648381
В контроллере должен быть метод initialize, он вызывается после старта. В нем обычно прописывается что-то типа

>box.setItems(FXCollections.observableArrayList("First", "Second", "Third"));

#278 #648462
>>648400
>>648406
Тханк йоу.
50 Кб, 700x510
#279 #648503
Решил вкатиться в конфу java-господинов.
Посоветуйте последние книги по сабжу и смежным областям.
За плечами 22-лвл и знание синтаксиса жабы, немножко многопоточности и анализа алгоритмов и англ. язык.
>>648662
#280 #648639
Кто-то знаком с такой штукой как jhipster? Как впечатления? Есть альтернативы? А то все как-то очень уж наворочено, куча фрейворков по тестам фронта, аоп приплели непонятно зачем, ликвибэйс тот же. Мне бы что-то с тем же стеком boot + angular но без этих адовых наворотов.
>>648939
#281 #648657
Насколько вообще джава для Веб пригодна, по сравнению с тем же питоном или руби?
#282 #648662
>>647734

>Java для тупых уебков


>Только что-то не встречал таких я, кто бы хотя бы до джуниора дошел, читая только эту макулатуру


Очевидно же, что суть подобных книг заключается не в том, чтобы сделать тебя джуниором (что нереально, само собой), а дать базовое понимание языка и основных принципов.
>>648503
Куда ты вкатываться собираешься, если не можешь даже сообразить прочитать ОПпост?
>>648663
#283 #648663
>>648662
Я прочитал. Извините за беспокойство.
4 Кб, 150x139
#284 #648674
Вот вам задачка джаваны.

Дано:
1. Рубимакака с опытом 1 год
2. Город: Мухосрань, 900к
3. Зп 35к
4. Образование: высшее техническое, но не итебаное

Найти:
Время за которое рубимакака станет джава джуном, как минимум с такой же зп. С учетом что увольняться не собирается.

И вообще, какие сейчас вилки зп у джавадаунов ПО РОССИИ? Джун/мидл.
#285 #648697
>>648674

> увольняться не собирается


Года 4-5.
#286 #648718
>>648674
В чем проблема продолжать быть рубимакакой?

> высшее техническое, но не ит


Это небольшая проблема.

> Время


Ну ты же понимаешь, что это зависит от тебя самого. Если дохуя умный, то можно и за год.

> вилки зп


> Джун/мидл


20-150 - такие дела, сильно зависит от компании. Пиздуй на сайты вакансии и там смотри.
>>648724
#287 #648724
>>648718

>В чем проблема продолжать быть рубимакакой?



Во рту есть стойкое ощущение, что рельсы ведут только на апворк. И тут возникают большие проблемы с персональным менеджментом и большая вероятность пососать хуец.
>>648726
#288 #648726
>>648724
Ну найди работу в офисе, перекатившись в ДС-1-2
>>648727
#289 #648727
>>648726

>ДС-1-2


Нихуя кардинально не поменяет.
Вся рельсоработа - это один хуй удаленка в том или ином виде. Ну или офис с пидорашенскими клиентами и зп в 40к, что мне нахуй не надо.
>>648729
#290 #648729
>>648727
Посмотрел я вакансии рубин-на-колесиках - нашел b нормальные, в офисе с печеньками и з/п неплохая. Лучше бы подтянул Ruby скиллы до уровня миддла.
679 Кб, 3264x1836
#291 #648738
Стоит ли учить джаву если я хочу в веб? Или всякие питоны/руби в этом плане поперспективнее?
>>649091
#292 #648916
>>647017
Таки нет, если ты не будешь рассматривать только SE, а еще глянешь на всю эту EE хуиту. У шарпа с этим попроще.
>>648919
#293 #648919
>>648916

>нет


да
selffix
#294 #648939
Бамп вопросу >>648639
>>648946
#295 #648946
>>648939
А как насчет просто Sping Boot + Angular через webjars?
#296 #648973
Тут может кто проинструктировать по эластик сёрчу?
#297 #649035
В общем, в оп-посте не нашел книгу, которая была бы современной. Кто-нибудь читал "Java SE 8 for Programmers"?
#298 #649091
>>648738
В джаву точно не стоит. Пока до веба дойдет - ты охуеешь, сколько нужно выучить. За это время на пхп или руби уже вовсю можно хуярить в продакшене. А в джаве будешь еще недоджун.
Хочешь в веб - выбирай то, что под веб создавалось, и под него заточено.
>>649346
#299 #649131
javaFX
есть у меня fxml файл в котором, как и полагается, лежит GUI, но мне нужно сделать так что бы часть гуя генерировалась в коде в классе контроллере
>>649138
#300 #649138
>>649131
Чому ты такой безграмотный?
Тебе уже писали про Initializable#initialize. Там надо типа pane.getChildren().add(new Button("Hello world"));
>>649158
#301 #649158
>>649138
сорян
туплю
#302 #649188
Анон, выручай. Есть SOAP веб-сервис без исходников (только EAR файл), составлен с использованием Apache CXF. Как его развернуть на WebLogic 12c (64-битная винда)? При деплое выдает ClassNotFoundException: org.apache.abdera.model.Element.
Нужно как-то настроить WebLogic, чтобы видел CXF, как это сделать?
#303 #649200
>>649188
Да, и советы описанные здесь (в разделе WebLogic):
http://cxf.apache.org/docs/application-server-specific-configuration-guide.html
не помогают.
#304 #649340
>>648674
Нахуй яву, если уже рубист?
Продолжай заниматься тем же
#305 #649346
>>649091
Нихуя не понял, недавно говорили что ява норм, а теперь что хуйня.
Вот и верь вам.
>>649386>>649476
#306 #649386
>>649346
Норм ява, норм. Не слушай неосиляторов.
>>651435
#307 #649397
>>649188

> SOAP веб-сервис без исходников (только EAR файл),


> pache CXF.


> WebLogic 12c


Где ты откопал этот кусок говна?
>>649419
#308 #649419
>>649397
Заказчику нужен веб-сервис на основе Oracle Primavera (я знаю, что это говно, но менять на другое он не соглашается). А она ставится только на WebLogic и требует CXF.
#309 #649476
>>649346
Дак тут конкретно про веб речь идет. Или ты на яве сайтики пилить планировал, когда есть питон для этих целей?
#310 #649566
>>649188
http://abdera.apache.org/
Положить в classpath JVM, на которой крутится сервер ( jre/lib/ext ). Быдлоспособ, но что поделать.
Должно устранить по крайней мере тот эксепшн, что ты скинул.
>>649648
#311 #649592
>>649188
Очевидно, что класс не найден.
EAR - это zip, потому ты можешь посмотреть что там внутри и лежат ли там необходимые либы (классы).
Раз их там нет, то поступи как тебе сказали выше насчет classpath.
>>649648
#312 #649633
Анон, помоги.
Умею в JavaFX и в Java Core (кроме потоков и модных фишек последних версий, вроде Stream API).
А вот программы писать не умею, связывая эти знания. Не понимаю как связать контроллер и логику программы. Паттерны мб какие надо использовать? Если да, то какие?
Посоветуй что почитать\посмотреть. Можно даже исходники чего-нибудь с гита.
>>649645>>649702
#313 #649645
>>649633

> потоков


Это плохо. Хотя в реальной жизни вся параллельность спрятана под фреймворками и библиотеками, базовые знания нужно иметь.

> Stream API


Это тоже. Семерка уже считается легаси, а в восьмерке без этого никуда.

> контроллер и логику программы


Просто фигачь все initialize и eventhandlerы. Вот над чем действительно надо думать - это менеджмент view (как перетащить состояние из одного контроллера в другой).

> почитать\посмотреть


Документацию JavaFX.
Исходники фреймворка DataFX.
#314 #649648
>>649566
Неа, уже пробовал. Тогда ругается на другие классы. Нужен именно CXF целиком.
Если полностью добавить в CLASSPATH все библиотеки (JAR файлы) из CXF, то наебывается сам WebLogic (зависает при деплое), видимо конфликт с какими-то уже используемыми классами.

>>649592

> EAR - это zip, потому ты можешь посмотреть что там внутри и лежат ли там необходимые либы (классы).


Откуда они там? Если бы были, то все бы находил. Внутренности конечно смотрел, там внутри WAR, а в нем конфиги, в которых прописано, что используется CXF и Spring.
Вот этот архив: http://rghost.ru/6J2DVpnZ4
>>649714>>649718
94 Кб, 838x954
#315 #649702
>>649633
Братан, а ты не хочешь программировать впаре? Я думаю в группе намного быстрее происходит обучение, да и экстримальные практики можно попробовать. Вообще, Я бы с удовольствием собрал или вступил в конфу начинающих и не очень джавагоспод.
Оставлю фейкомыло для дальнейшей связи - ka&nEmikadze401ANUSg58>mailPUNCTUMcqI1om
#316 #649714
>>649648
Что ты пробовал? Добавить abdera-*.jar в classpath?
>>649810
80 Кб, 815x335
#317 #649718
>>649648

> Откуда они там?


Внутри war, например. А ты думал, аппликейшн сервер сам по pom-файлу будет зависимости качать, а 36 мб - это просто несжатые нули?
>>649810
#318 #649740
>>649702
Камикадзе, ты?
#319 #649742
>>649702
Отписал тебе
#320 #649743
Антошки, есть задача.
Проект - spring boot + angular, нужно сделать обмен сообщениями между пользователями вроде приватного чата как в соц.сетях. Что-то совсем запутался, не понимаю как разметить классы. У кого-то был опыт подобного?
>>649748
#321 #649748
>>649743

> не понимаю как разметить классы


Ты про CSS? Какие тут могут проблемы? Чем больше классов, тем лучше.
>>649751
#322 #649751
>>649748
Лол. Не те классы, а сущности. @Entity.
Т.е у меня есть User, а мне надо создать Message, Conversation и как-то увязать между собой в отношениях, плюс сервисный слой.
>>649754>>649761
#323 #649754
>>649751

>spring boot


фу, зачем есть говно, когда есть божественная Акка?
>>649757>>650142
#324 #649757
>>649754
В которой иконы и ритуалы божества меняются каждые три месяца. Ты ещё скажи, slick есть вместо spring persistense.
>>649811
#325 #649761
>>649751
User - M:M - Conversation
Message - M:1 - User
Message - M:1 - Conversation
Conversation - 1:M - Message
Читай как делать связи в JPA/Hibernate, включая двусторонний маппинг.
>>649930
#326 #649781
Посоны, есть одна jar-ка. Открываю декомпилером - классы и сигнатуры методов все на месте и не обфусцированы, но в логике куча лейблов и парсер даже не показывает ее в читабельном виде. Jar-ку предполагается запускать через кастомный -Xbootclasspath/p.
Что это за вид защиты - шифрация байткода?
#327 #649810
>>649714
Да.

>>649718
Там не все библиотеки.
#328 #649811
>>649757
Манямирок джяваиндуса
#329 #649930
>>649761
Спасибо, антош.
Похоже?

class User {

String name;
String password;

@ManyToMany
Collection<Converstion> conversations;
}

class Converstion {

@ManyToMany(mappedBy = "convesations")
Collection<User> users;

@OneToMany
Collection<Message> messages;
}

class Message {

String text;

@ManyToOne
User user;

@ManyToOne
Conversation conversation;
}

Нужно ли тут использовать jointable?
#329 #649930
>>649761
Спасибо, антош.
Похоже?

class User {

String name;
String password;

@ManyToMany
Collection<Converstion> conversations;
}

class Converstion {

@ManyToMany(mappedBy = "convesations")
Collection<User> users;

@OneToMany
Collection<Message> messages;
}

class Message {

String text;

@ManyToOne
User user;

@ManyToOne
Conversation conversation;
}

Нужно ли тут использовать jointable?
>>649941>>649963
#330 #649941
>>649930
Ага, только @Id и @Entity забыл.
>>650094
#331 #649963
>>649930
хешмап используй епти
2 Кб, 322x78
#332 #650086
Аноны, помогите плиз нюфане. Есть ide netbeans 8 и небольшая прога на java которая шарится в html файле и ищет слова которые мы ввели. На других компах работает, а на моем отказывается и показывает пикрелейтед. Куда копать?
>>650094
#333 #650094
>>649941
>>650086
Винду меняй.
>>650100
#334 #650100
>>650094
Это проблема конкретно в 10, или конфликт с пакетами java?
>>650115
#335 #650115
>>650100
Это была шутка.
Проверь пермишены на доступ к файлу/папке.
#336 #650142
>>649754
Поясни за Akka: когда нужно использовать и когда нет.
>>650144
#337 #650144
>>650142
Зачем вообще тебе эти костыли?
>>650154>>650304
263 Кб, 1560x848
#338 #650154
>>650144
Какие, джява?
>>650162
#339 #650162
>>650154
Нет.
Акка и спринг бут.
боевые картиночки снова в моде?
>>650163
#340 #650163
>>650162

>Акка и спринг бут.


Точно, нахуй это нужно, выбор господ - хуярить портянки на голых AbstractSingletonProxyFactoryBean.
>>650173
#341 #650166
>>644527
Чувак, это рэпчик.

У котлина прямой интероп из джавы в сабж и наоборот, без траханья с преобразованиями как в скале и грувях.

Итого, kotlin - это Java здорового человека из 2010-х, а не Java курильщика или вообще оригинальная синтаксическая кислятина из 1990-х.
#342 #650168
>>650166

> без траханья с преобразованиями


> грувях


Да нормально там с этим.
#343 #650170
>>650166
Без паттернматчинга. Надеюсь, завезут.
9 Кб, 300x168
#344 #650171
>>650166

>AbstractLocalSingletonClassStatelessRemoteProxySessionValidationAwareInternalDefaultSimpleAnnotationInitializingFrameInvokerStateConfigurationFactoryExecutorBeanLoaderImplBuilder здорового человека

>>650174>>651605
#345 #650173
>>650163
Ну да.
526 Кб, 657x516
#346 #650174
>>650171
Как будто что-то плохое
#348 #650516
>>650304
Какое-то маня-говно уровня "10 качеств настоящего мужчины". Скоро ТП будут расшифровывать как тупой программист.
>>650588
#349 #650588
>>650516
Ну я новичок, поясни что не так.
#350 #650969
Погромач, прошу, внеси ясность: мне нужно научиться разрабатывать веб приложения. До этого я пилил бэкэнды на java. Почитал описание веб фреймворков java. Там spring mvc, play и прочая gwt. Потом я наткнулся на статью где говориться что для веба ничего лучше spring mvc + angularjs нет. Че скажешь? Ты сам на чем делаешь веб проекты и что рекомендуешь? Сделать надо формочки для заполнения, что-то типа анкет.
>>651139>>651198
#351 #651139
>>650969
Dropwizard попробуй
>>651194
#353 #651198
>>650969
Одно слово - jhipster.
Скачиваешь, запускаешь, смотришь как там все устроено.
Не благодари.
>>655282
16 Кб, 783x321
#354 #651228
Анон подскажи. Есть странчка в интернете, по URL выдает таблицу с данными, есть кнопочка которая подгружает вместо таблицы SVG графику. Нужно спарсить SVG и сохранить.

Как сформировать запрос серверу, чтобы он вернул мне страничку с svg?
>>651273
#355 #651272
>>651194

> Job Openings


А, лол, ну бери тогда битрикс, дурачок
#356 #651273
>>651228
HtmlUnit
XPath
Дальше сам
#357 #651435
>>649386
Лол, каких неосиляторов?
Ему все верно ответили, использовать джаву для сайтов, которые можно на вп сделать мягко говоря - нецелесообразно. Джава для мобилок и тырпрайзов.
#358 #651474
Пацаны, купил спринг в действии (сам-то спринг я знаю, купил как справочник), а там обложка такая, что невозможно читать. Можно ли как-нибудь её перешить в человеческую обложку как на spring для профессионалов?
>>651484
136 Кб, 1120x977
#359 #651484
>>651474

>купил

>>651485
#360 #651485
>>651484
А я люблю тех литературу покупать.
>>651486
#361 #651486
>>651485
Еще бы читать любил.
>>651488
#362 #651488
>>651486
И это люблю. Художку на читалке читаю. Что понравилось - покупаю бумажный оригинал.
#363 #651578
Посоны, в 18-м треде два долбоёба выяснили, что примерно в одно и то же время пилили тестовое задание для конторы SysGears. Один из этих долбоёбов - я. Хотелось бы выяснить, присутствует ли тут второй долбоёб.
#364 #651591
мне нужно перезапустить мое приложение из этого самого приложения, типа есть кнопка "новая игра" и вот её надо как то реализовать
>>651596>>651597
#365 #651596
>>651591
А не проще ли просто очищать статистику?
#366 #651597
>>651591
Нужно запустить другое приложение для перезапуска первого
>>651600
#367 #651600
>>651597
Что ты несёшь? Перезапускать прилагу - это же бред. Почему нельзя всё сбросить?
>>651602
#368 #651602
>>651600
Так тебе надо перезапустить приложение или перезапустить какую-то игровую сессию внутри приложения? Вынь говно из черепа и изъясняйся нормально.
>>651606>>651607
#369 #651605
>>650171
>>650171
Ну, дык, паттерны проектирования в статических языках для обхода их особенностей никуда не деть. :)
#370 #651606
>>651602
Это не мне надо. Я тут мимокрок.
#371 #651607
>>651602
ок
перезапустить сессию
>>651679
#372 #651679
>>651607
Хранить дефолтное состояние и приводить текущее состояние игры к нему. Задавай конкретные вопросы - получишь конкретные ответы.
#373 #652102
Джаваны, посоветуйте хороших упражнений/примеров с использованием массивов.

Что это такое и как это работает уже выучил, но куда применять и зачем - пока не понял.
Особенно не понял, зачем нужны матрицы.

Алсо, калькуляторы и прочее уже писал без их использования
>>652106
#374 #652106
>>652102
Напиши игру "Жизнь" на массивах
>>652107
#375 #652107
>>652106
?
сарказм?
>>652108
#376 #652108
>>652107
Что? Какой там сарказм?
>>652109
#377 #652109
>>652108
Забей)

ну серьёзно, куда эти массивы применять?

Генератор предложений/постов типа вкшного уже сделал, не слишком много там делать надо было с массивами.

Во всех текстах про массивы всё расписано, мол они пиздец как нужны и даются какие-то ебанутые задания, которые быстрее в голове просчитать, чем формулами, которые даны в тексте.

Вот и спрашиваю, куда заюзать массивы и всё такое?
даже не так. куда задействовать непримитивные массивы?
а то простые с плеер1 и плеер2 это ни о чём)
>>652110
#378 #652110
>>652109
Ну и чем тебе "Жизнь" не устроила? И чего ты приебался к массивам? Есть же списки.
>>652111
#379 #652111
>>652112
#380 #652112
>>652111
Так точно
>>652113
#381 #652113
>>652112
спасибо, поизучаю)
#382 #652137
Добавьте в 4 пункт про практику в раздел "Олимпиады" сайт Codeforces.com и уберите оттуда эти сраные параши acmp.ru и acm.timus.ru, которые застряли в 2006 году.
>>652515>>658320
#383 #652494
Есть массив, содержащийся 10 стрингов: имена людей.

Хочу сделать JLabel, содержащие эти имена(по порядку)

Как это реализовать?

На выходе хочу сделать имя человека и напротив него кнопка.
>>655619
#384 #652515
>>652137
Запилишь следующий перекат с какими надо исправлениями.
Тут админов нет, перекаты и шапки делаются посетителями треда.
#385 #652560
Когда лучше использовать JDBC вместо Hibernate?
>>652565
#386 #652565
>>652560
Никогда. Использовать Hibernate или другие ORM и просто обертки на JDBC
#387 #652582
Использую эклипс, глянул урок по нэтбинс.
Там есть какой-то раздел десигн.
ЧТо эт такое? Есть ли аналоги в эклипсе и чем эта вкладка занимается? (в уроке чувак делал драг н дроп картинки туда, бэкграунда)
#388 #653039
Антоши
Имеется класс
Huita<H>{
Shit shit;

interface Shit<H>{
void makeShit(H obj);
}
public Huita(Shit shit){
this.shit = shit;
}
....
}
И класс наследник:
InheritedHuita extends Huita<String>{
Huita.Shit impl = new Huita.Sheet<String>{
void makeShit(String obj){
//Implementation
}
};
InheretedHuita(){
super(impl);
}
}
Я так понимаю мое определение интерфейса доступно еще до входа в конструктор, почему тогда я не могу его туда передать?
>>653143
#389 #653143
>>653039
Ты можешь нормально код написать, без всяких этих шит-хуит? И выложить ссылку на отформатированный вариант, например, на pastebin.
И так лень разбираться в ваших поделках, а тут ещё и глаза ломать сидеть.
#390 #653360
Сап, нужна помощь.

Есть 2 массива: в одном имена(String), в другом номера телефонов(int).

Открывается окошко, где просят ввести имя. Если это имя есть в массиве - вылезает окошко "Набираю + номер телефона", если нет - то пишут, что такого чувака нет, отбой.

Как реализовать привязку инт-массива к стринг-массиву?

Например, имя Василий в массиве - третье, значит номер телефона василия это 3й объект в массиве с инт.

Но вот как это сделать прям совсем не могу что-то.
#391 #653363
>>653360
Нужно создать класс PhoneNumber, который инкапсулирует логику валидации и форматирования номера телефона, а не хранить его в int (и даже String). И еще класс Person, у которого будет два поля - name и phoneNumber. Потом создаешь Map<String, Person>, где группируешь людей по именам.
105 Кб, 1034x359
#392 #653364
>>653367
105 Кб, 1034x359
#393 #653365
>>653360

выглядит проблемка вот так
>>653367
105 Кб, 1034x359
#394 #653366
>>653360

выглядит проблемка вот так
>>653367
#395 #653367
>>653366
>>653365
>>653364
Я не совсем понял, как ты говоришь выглядит проблема?
>>653368
#396 #653368
>>653367
уёбищный интернет, несколько раз сбрасывал и не отправлял, а потом всё разом постанул, ссори
>>653401
#397 #653401
>>653368
Пытаешься взять строку "a", которую тебе возвращает шоуИнпутДиалог (это, на секунду, имя сотрудника, как я понял), и использовать её для индексации по массиву. То есть ты вводишь "Petya" он говорит "да,такое имя есть", и дальше ты пытаешься обратиться к массиву, используя "Petya" как индекс. Тебе нужно сделать что-то типа
wrkrsPhone[wrkrs.индексОф(a)], то есть найти индекс элемента "Petya" в массиве
>>653537
#398 #653537
>>653401
да, я пробовал этот метод - выдает почему-то только первое из wrkrsPhone.
В данном случае с ЛЮБЫМ именем выдает первый номер(22626)
>>653539>>653561
#399 #653539
>>653537
после этого уже решил написать сюда
#400 #653551
Почему жава такой охуенный язык?
>>653561
#401 #653561
>>653551
C каких пор, жаба заплесневелый инертный язык, надежный как молоток.
>>653537
Просто сделай Map<String, String> или если хочешь хранить в цифрах номера, то сделай Map<String, Integer>, в итоге просто по имение делаешь map.get(name).
#402 #653701
Всё, сделал.
Надо было через лист делать

http://pastebin.com/6Bu6DU2V

Всем спасибО) в ближайшее время засяду за эти Maps)
#403 #654102
Посоветуйте либо для отрисовки графиков объемных.
>>654105
#404 #654105
>>654102
либу
>>654146
#405 #654146
>>654154
#406 #654154
>>654146
Спасибо.
#407 #654172
есть поле состоящее из кнопок нужно сделать так что бы при зажатии на одной кнопке она поменяла цвет(это я сделал) и дальше протащить мышь зажатой что бы поменяли цвет другие кнопки на которые попадет курсор
>>654200
#408 #654200
>>654172
Swing или FX?
>>654205
#409 #654205
>>654226
#410 #654226
>>654205
Попробуй добавит хэндлер для MouseEvent.MOUSE_ENTERED
#411 #654282
Вопрос. Для чего используют Спринг?
>>654292>>654471
#412 #654292
>>654282
Для преодоления костылей джавапараши.
>>654308
#413 #654308
>>654292
Спринг используется для интрепрайза? Или в тырпрайзе на другом работают?
>>654313
#414 #654310
>>642217 (OP)
Друзья Джавамастеры. Как извесно, борды нужны для того, чтобы помогать анонам выполнять их реквесты.
Итак, мне дали задачу, написать игру с реализацией стрельбы балистическими снарядами из пушки, как в энгрибердс.
Из Джава я умею в синтаксис, до написания консольных крестиков-ноликов и Swing, на уровне добавление кнопочек на окошко.
Как расчитывать траэкторию полета снаряда и отображать анимацию на свинге, вообще не представляю.
Подскажите список того, что нужно гуглить и в каком порядке, чтобы запилить крутую игруху, вплоть до перестрелок по сети.
С меня как обычно.
#415 #654313
>>654308
По всякому бывает. EJB3 вроде получше сейчас.
>>654467
#416 #654315
>>642496
Gmail на Javascript написан
#417 #654372
>>654310
Начни со школьного учебника по физике.
>>654547
#418 #654374
>>654310
Не совсем то, но в книге про android от дейтелов за 2015 год, в одном разделе реализуют похожую штуку, там пушка стреляет, вроде даже по балистической траектории, смотри куски в которых именно логика реализуется, а не пишется оболочка андройда
#419 #654422
Аноны, а если я написал прогу на java 1.7, а запускаться будет на компе у которого jre меньше чем 1.7, заведется?
>>654427>>654474
#420 #654427
>>654422
нет
>>654469
#421 #654467
>>654313
Не получше.
Spring -- дефакто стандарт в энтерпрайзе, ибо JEE развивается медленно и осторожно.
#422 #654469
>>654427
А есть какие-нибудь преобразователи исходников или байт-кода чтобы прога могла завестись на машине с более древними jdk, jre?
#423 #654471
>>654282
Во многом аналог + альтернатива Java EE по функциональным возможностям и назначению.
#424 #654474
>>654422
Если при компиляции указал версию исходников ниже 1.7, то будет запускаться на версиях вплоть до той что указал.
>>654591
#425 #654547
>>654372
Я нашел эту книгу, но там пушка стреляет прямо, и ей мешает движущая мишень.
>>654549
#426 #654549
>>654547
Бля. Еще и не туда ответил
#427 #654591
>>654474
А есть какие-нибудь утилиты чтобы сонвертировать jar в исполняемый файл для винды и чтобы он выполнялся если вообще нет jre, jdk?
>>654601
#428 #654601
>>654591
Одна из первых ссылок в гугле:
http://www.devbug.info/2011/04/exe-java.html
#429 #654663
>>642217 (OP)
Аноны, а правда, что джава + технологии это то востребованное, что можно учить ради денег?
На какие технологии больше вакансий?
Сколько занимает обучение с нуба до МОЙ 1 ЗАКАЗ НА ФРИЛАНСЕ?
>>654682
#430 #654682
>>654663
Частично правда. Не знаю насчёт фриланса, но вакансий в энтерпрайзе достаточно.
Что касается обучения, то тут сложно сказать. Основы языка можно выучить достаточно быстро, но вот опыт нормальной разработки -- от двух лет и более, в зависимости от места получения опыта. Можно хоть 10 лет макакой оставаться, особенно если на работе приходится иметь дело с крупными легаси проектами, которые писали макаки.
>>655169
#431 #654868
Есть какие-нибудь подкасты чисто по Java или теории программирования?
#432 #654893
Блять, не могу разобраться с циклом While.
Ну то есть, с теми, что даны в заданиях с прибавкой циферок и строк я разобрался.
Сделал тут себе идейку, а сделать не получается - либо цикл бесконечный, либо сразу прерывается.

В общем, типа проверка пароля.

http://pastebin.com/p2FJtwWn

Пока не введут "Привет", цикл должен повторяться.
С этим вариантом тоже не получилось
if(s=="Привет"){
break;
}
>>654914>>654919
#433 #654914
>>654893

> java


> проверка на равенство через ==


Ты перепутал его с адекватными языками 21 века, иди equals наверни.
>>654919
#434 #654919
>>654914
>>654893
методами костылей всё получилось, полистал стэковерфлоу, сделал через equals
http://pastebin.com/n0EuJhzr
>>654940>>654996
#435 #654940
>>654919
Все верно запомни, через == можно сравнивать только то, что точно является примитивом byte, char, int, float, long, double, все остальное через equals, еще желательно всегда equals вызвать для констант, то есть не str.equals("xyita"), а "xyita".equals(str); Таким образом можно избавится от проверки на null. Если же вдруг тебе надо проверить что хуйня равна null, то тогда надо сравнивать через ==
#436 #654942
>>654940
"xyita"==str.intern() ?
>>654948
#437 #654948
>>654942
Ты что ебнулся. Во-первых ==, во-вторых intern().
Делать intern() - себя не уважать. А вообще компилятор может выкурить что ты используешь строчный литерал и == сработает.
#438 #654964
>>649702
я не он, но тоже был бы не против вступить в конфу.
Хотя я только недавно начал явой заниматься
#439 #654996
>>654919 >>654940
А для сравнения двух объектов, в Java 1.7 даже придуман костыль утилитный метод:
https://docs.oracle.com/javase/7/docs/api/java/util/Objects.html#equals(java.lang.Object, java.lang.Object)
>>655011
#440 #655011
>>654996
Мда зачем все так сложно.
#441 #655028
Господа, что это такое? Какие еще ансейф операции я испоьзую? Обычный парсер в FX проекте. В обычном SE приложении такое не вылазит.
Parser.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
>>655159
#442 #655045
>>642217 (OP)
Суть такова - хочу перенести несколько классов из основного проекта IDE. Перенеся их, я смогу при необходимости имортировать только эти конкретные классы и использовать их в нескольких проектах.
Грубо говоря, расклад выглядит так:
Класс User. Это класс, который я хочу перетащить в новый проект. Он сейчас находится в проекте А.
Я хочу использовать этот класс как в проекте A, так и в новом проекте B, но проекту B достаточно урезанной реализации этого класса. Вот примерная схема:
Project A: используется йоба-версия класса User
Project B: используется урезанная версия класса User, сделанная путем выпиливания ненужного из йоба-класса
Project C: собственно, сама урезанная реализация класса User
Как это лучше всего сделать? Читаю про абстрактные классы и интерфейсы, но хз что лучше выбрать в этом случае. А ведь можно и вовсе использовать extends без абстрактных классов. Как выбрать правильный стул? Алсо, знакомый жабакодер сказал что в таких случаях еще можно reflection юзать и что нужно какую-то логику выбора правильного класса добавить, но что конкретно он имел в виду я хз. Помогите нубу.
>>655155
#443 #655065
>>654940
Спасибо за информацию)
мимо автор вопроса
#444 #655155
>>655045
Project A:
class User { ... }

Project B:
берешь и юзаешь.

Project C:
class YobaUser extends User { ... }

Чего тебе в такой схеме не хватает? Зачем абстрактные классы?
>>655156
#445 #655156
>>655155
A и С перепутал.
#446 #655159
>>655028
Где-то дженерики пропустил, например, присваиваешь дженерик-списку raw-список:
List<Integer> a = new ArrayList(); // вместо new ArrayList<>()
#447 #655169
>>654682
Ну а до 1-го заказа фриланса? Просто нет способа другого опыт получать
>>655220>>656734
#448 #655220
>>655169
На джаве нет фриланса. Ну, андроид разве что.
#449 #655265
Аноны, от vk приходит json в котором есть несколько полей
photo_50, photo_100 и т.д. Как можно выдрать ключь с максимальным числом на конце? Вангую что нужны регэкспы, но без понятия как их применять
>>655287
#450 #655282
>>651198
Антош, все-таки спасиб. Ютубные примеры выглядят няшно.
#451 #655286
Долго ли вкатываться в андроид? Года хватит при учете что я буду задротить с утра до вечера? Писал на жаве калькуляторы, лол.
#452 #655287
>>655265
Если префикс везде один, то его отсекаешь и парсишь в int.
>>655315
#453 #655315
>>655287
ну я сейчас так и делаю, отсекаю все префиксы, возвращаю массив чисел и выюираю максимальное, но мне показалость что это быдлокод
>>655319
#454 #655319
>>655315
Ну если сильно гонишься за красотой API, можешь заимплементить Comparator<String> и искать через Collections#max
>>655368
#455 #655368
>>655319
Тогда лучше оставлю как есть, почти не шарю в регулярках, но мне казалось что они тот самый рыцарь на коне
>>655383>>655414
13 Кб, 770x153
#456 #655383
>>655368
Можно было бы так попробовать, только у меня нету файла чтобы проверить точно и мне лень немного
>>655414>>655428
#457 #655414
>>655368

> они тот самый рыцарь на коне


Если можешь не использовать регулярки - не используй их. В данном случае нужно просто отрезать постоянный префикс.
>>655383

> у меня нету файла


Пили юнит-тесты с захардкоженными данными.
#458 #655428
>>655383
Никогда и никому больше не показывай такую хуйню.
#459 #655525
как сделать разных обработчиков событий для разных кнопок мыши
JavaFX
#460 #655533
>>642217 (OP)
Аноны, а нахуй нужна джава?
Чем занимается большинство джавистов в рашке? Что за направление самое популярное?
>>655551
#461 #655551
>>655533
интерпрайз(веб, как правило бэкенд) и андроид
#462 #655619
>>652494
Попробуй с помощью for each

Я бы сначала создал шаблон лейбл с кнопкой в отдельном классе и метод, который принимает на вход строку, помещает ее в лейбл и возвращает "готовый шаблон"
#463 #655621
>>654310
Что то мне подсказывает, что для отрисовки полета снаряда нужен канвас
#464 #655654
Кажется у меня жаваскрипт не завершился, как его завершить? Это вообще линукс, где тут процессы посмотреть.
>>655725
#465 #655725
>>655654
Ctrl+d ну или ctrl+z
#466 #656048
Как сделать двумерный динамический массив на два int? Map не подходит, потому что нужно постоянно менять первую пару элементов.
#467 #656050
>>656048

>ArrayList<ArrayList<Integer>>


Я аутист и эта штуковина мне не нравится.
>>656399
#468 #656325
>>656048
Нафиг он тебе нужен? Давай рассказывай, ты явно творишь какую-то ньюфагскую дичь.
>>657213
#469 #656399
>>656050
Да, мне тоже. List<List<Integer>> намного лучше.
>>657213
#470 #656471
Джаваны, в последнее время часто в коде встречаю classLoaderы, как в стандартной яве, так и в сторонних библиотках. В общих чертах понимаю что это, но не зачем. Анон, напиши пару прикладныx примеров зачем может понадобиться писать свой загрузчик и передавать его куда либо?
>>656499
#471 #656499
>>656471
Вот решил ты сделать сервер (типа Tomcat) на котором будут крутиться чужие Java сайты.

А у разных сайты могут быть зависимости на один и те же библиотеку, но разных версий.
И что бы ты конфликтов не возникало, у каждого сайта должен быть свой класс-лоадер.
>>656566
#472 #656566
>>656499
Все равно не понятно, а разве сайты не поставляются с библиотеками, от которых они зависимы(в мавене этож все прописывется)?

Еще такой вопрос:
Скачал xStream для сериализации в xml( освоение hibernate следующий пункт в моем туду).
Вроде все просто, как для даунов
Создал обычный List<String> с двумя итемами, сохранил все это дело и получил такой xml:
<?xml version="1.0" ?>
<list><string>some</string><string>bome</string></list>

И малость прихуел, куда делась вся инфа о иерархии наследования, о интерфейсах и методах, статических полях и т.д. ?
>>656579>>656588
#473 #656579
>>656566

>куда делась вся инфа о иерархии наследования, о интерфейсах и методах, статических полях и т.д. ?


А зачем она там? Этот xml содержит достаточно инфы, чтоб создать точно такой же список строк.
>>656677
#474 #656588
>>656566

> Все равно не понятно,


Попробуй напрячь мозг.

Много сайтов, у каждого разные версии одной и той же библиотеки ->
-> Классы с одинаковыми пакетами и именами, но разной сигнатуры (к примеру разные методы).

Как они уживутся вместе? У тебя JVM просто упадет при запросе одного из таких классов.
>>656590>>656594
#475 #656590
>>656588
Как они уживутся вместе?
Имеется ввиду одновременно запущенные в памяти одного процесса.
#476 #656594
>>656588
Напряг и понял что я все еще полный лох в java, такие посты меня ставят в тупик. Пойду задрачивать книги-статьи
#477 #656677
>>656579
Просто удивило что так мало информации. Была мысль что если в классе наследнике есть переменные состояния и сохранить как объект базового класса то вся инфа о наследниках потеряется, все таки я сохранял arrayList как list. Но только что написал пару тривиальных классов для проверки и все нормас
#478 #656690
А еще охуел когда executor(cachedThreadPool) сохранило в 228кб, и там инфы я ебал, в том числе и куча путей конкретно моей ОС, т.е. по сети такой объект хуй передашь
>>656717
#479 #656717
>>656690

>2016


>сериализовывать треды

>>656856>>657193
#480 #656734
>>655169
Для фриланса Java не самый лучший выбор. Пробуй веб.
#481 #656850
Посоветуйте годной лит-ры про mvc googlit ne umeu. Понял что сосал хуй на протяжении полугода, но нахватался немного теории
#482 #656856
>>657193
#483 #656915
Реально ли джуном/стажером вкатиться в ДС в 24 года ?Вышка есть техническая.
#484 #656919
>>656915
Нет.
#485 #656920
>>656915
Да как же вы блять сука заебали.
Нет нельзя. И всем остальным, кто там еще с тобой пришел передай, что нельзя.
Все, уебывай
>>656934
#486 #656934
>>656920
Двождую. )) Нам ява-хокерам не нужны ньюфоги)
#487 #657024
>>656915
Я в 27 вкатился джуном даже без вышки. Но это было в 2012-м.
#488 #657193
>>656717
>>656856

А что это прям совсем дно? Хорошо бы аргументировать. У меня в синглтоне использовался экзекутор и когда сериализнул объект, он вышле совсем толстым, методом проб нашел в чем причина. Я ньюфаг и многие вещи не очевидны.
>>657328
#489 #657208
Как компонент автоматически растягивать при изменении ширины окна. Вот в шарпе было такое поле в свойствах, а в свинг не вижу.
#490 #657213
>>656399
>>656325
Да все, я уже через ArrayList<int[]> сделал.
Рандомизатор с весом: в первой ячейке хранится число, а во второй - вес предыдущих чисел плюс вес текущего числа.
>>658276
#491 #657328
>>657193
Прост тред вот просто не сериализуют и синглтон тоже. Просто нет смысла. А промежуточные результаты их работы хранят по другому.
#492 #657357
>>642217 (OP)
Пишут тут что джава не катируется фрилансом, а как на счет удаленки в не рф?
>>657384
#493 #657384
>>657357
На яве пишут толстые сайты, с мудреной бизнес-логикой, а не очередной бложик васи пупкина поэтому и фриланса мало, там как правило нужны мелкие сайты. Проще самому зайти на odesk, или как он сча называется, и посмотреть
#494 #657419
Сап, джаваны, нужна консультация - на каком стэке сейчас делают синглпэйдж веб аппликейшены, интересует конкретно что используют в связке бэкенд+фронтенд+секьюрити+рестсервисы?
>>657448>>657566
#495 #657448
>>657419
Spring mvc, spring security, hibernate, angular js
>>657516>>657566
#496 #657516
>>657448
Толсто
>>657519>>657522
#497 #657519
>>657516
а чего толстого? я пока гуглил ответ на этот вопрос чаще всего встречал этот список.
Ну ещё spring boot, thymeleaf..
#498 #657522
>>657516
Я собирался написать то же самое, так что я думаю или мы два толстяка, или ты запутываешь следы.
#499 #657564
Ребзя, накидайте лабораторных с универов.

Упражнения из учебников утомляют что-то и переписывать код не вызывает восторга.
Чувствую в себе силы для самостоятельного "проекта", но идей нет.

Желательно простецкие лабы с первого курса какого-нибудь универа(без математики), но не слишком простые типа "Выведите строку "хуй", используя sysout"
>>657623>>657677
#500 #657566
>>657448
Схуяли толсто? Ты прав,я хотел столстить, так как подумал что имеется ввиду обычный одностроничная лэдинг пайдж.
Но вчитавшись понял что там написано про одностраничный вэбапп. И толстить не пришлось

>>657419 -толстяк
>>657568
#501 #657568
>>657566
Проебался с цифрами, ну вы поняли
#502 #657593
Что использовать для сервера крестиков ноликов? Play framework или что сейчас используют везде и просто в освоении?
#503 #657623
>>657564
В универах настолько уебищные лабы, что переписывание упражнений с книжки тебе покажется лучшим занятием в жизни, в сравнении с тем говном что дают на лабах в универе. Придумывай свою простенькую идею(напрягись, хорошенько подумай) и пили, если тебе покажеться что недостаточно знаний или нужно будет лезть в области, отличные от java похуй, это норм, stackoverflow и доки все пояснят. Так наберешься куда больше знаний по jave(даже если в твоем итоговом проекте сама ява будет занимать десятую часть), чем от тупых лаб, задрачивания примеров или написания неинтересных тебе проектов(всякие говноорганайзеры, крестики-нолики, морской бой и т.д.)
>>657751
#504 #657677
>>657564
Вот рулетка как раз для таких, как ты: >>636070 (OP)
>>657751
#505 #657751
>>657623
>>657677
спасибо, мужики)
#506 #657807
Eclipse бесплатный?
>>657817>>657821
#507 #657817
#508 #657821
>>657807
Intelij тоже, если тебе ЕЕ не нужно.
#509 #657863
А есть какие-нибудь сервисы похожие на amazon e3, чтоб можно было данные сохранить в облако и потом читануть оттуда, бесплатно и без смс?
#510 #657891
то чувство, когда написал тело программы, но не можешь сделать красивую формочку, которая полностью отражает задумку.
#511 #657989
кто может написать теоретическое определение полиморфизма
#512 #658045
Сап аноны, я решил постичь java, сегодня утром почитал много инфы, это интересно. Пользуясь материалами javaтредошапки решил уделять часа по два три в день на изучение. А теперь просьба к анону, поставь какую-нибудь задачу(и) с дедлайном в месяц, т е чтобы спустя 30 дней видел результат
Ну или предложи еще какой сплсоб, чтобы не изучать всё подряд, а найти какую-то цель и идти к ней
>>658083>>658320
#513 #658083
>>658045
Ппоробуй так:
1) интернет запрос, и выводв консоль или файл старнички гугла (дней 5) - Треды (Опционально), Стримы (не те что с коллекциями), Файлы, Http
2) Ввод с консольки на имя файла и адрес, валидация адреса, вывод ошибки (дня 2)
3) Приходи с промежуточными результати если тупишь
>>658182
#514 #658157
Джаваноны посоветуйте хороших блогов, подкастов по java, лучше на английском
>>658320>>660891
#515 #658182
>>658083
Разве это не ближе к javascript
>>658188
#516 #658188
>>658182
Тебе не надо визуализирвоать хуйню, просото переведи байтики хтмл в текст и тд.
#517 #658276
Бля, помогите нюфагу, пожалуйста: >>657213>>656048

Сделал три private static ArrayList<int[]> listOne = new ArrayList<int[]>();
Большая часть работы с ними идет в цикле, читаются элементы один за другим ну и тд.
Но мне не нравится, что для их чтения в цикле приходится городить методы с вот такими конструкциями:
if(num == 2) {
return listThree.get(index)[0];
} else if(num == 1) {
return listTwo.get(index)[0];
} else {
return listOne.get(index)[0];
}
>>658286>>658320
#518 #658286
>>658276
Я пробовал сделать ArrayList[] list = new ArrayList[3]; list[0] = new ArrayList<int[]>();
Но вот это list[num].get(index)[0] почему то возвращает Object.
#519 #658320
>>658276
Задачу внятно обьясни. Ты явно хуйню какую-то лепишь вместо нормального решения. Как минимум очевидно, что три разных листа не нужны, если у них связаны индексы, скорее всего можно обойтись одним листом, а что в нем будет - зависит от задачи.

>>658157
http://blog.takipi.com/

>>658045
Какой-то опыт в программинге уже есть? Если совсем нулячий, то будь морально готов, что за месяц ничего серьезного не осилишь. Посмотри рулетку >>636070 (OP), выбери то, что точно уверен, что сможешь, и решай по нарастанию сложности (факториал, количество слов в строке, азбука морзе, ...)

>>652137
Пили перекат со своими исправлениями.
>>658331
#520 #658331
>>658320

>Задачу внятно обьясни


Задача: написать Weighted Random Generator - есть какие-то предметы и шанс их выпадения (вес). Но при этом предметы делятся на три группы: обычные, редкие и очень редкие. У генератора есть фича, что для каждой группы редкости предметов используется свой множитель веса. Вот из-за этих трех групп и нужно три списка вида (предмет - вес предмета + вес предыдущих). Я бы мог добавить третью ячейку - редкость, но тогда бы пришлось переписывать весь алгоритм выдачи предмета: сейчас вес групп предметов, которые могут выпасть суммируются и генерируется случайное число в пределах 0 - суммарный вес. Это случайное число уже и сравнивается с весами предметов. Если я добавлю третью ячейку, то случайное число может получиться подходящим для предмета, который не может выпасть (множитель 0).
>>658365
#521 #658365
>>658331
В первую очередь, прекращай мыслить категориями ячеек, как какой-нибудь ссаный сишник. Тебе объекты дали же.
Сделай класс, содержащий всю инфу о предмете, в том числе "вес" выпадания и тип (норм/редкий/йоба, по-хорошему это энум, но можешь обойтись и просто коеффициентом).
Тогда у тебя все предметы будут в одном списке, а к нужным значениям будешь доступаться по имени, а не по магическим индексам.
Во-вторых, если у тебя не стоит цель выдумать свой велосипед (что для обученя вполне ок), тебе вообще нужен не список, а NavigableMap.
>>658385
#522 #658385
>>658365
Объекты мне не нравятся, да и не даст это ничего.
Имен нет, только числовой id и вес.
Индекс используется потому, что перебор происходит в цикле, объясню на примере:
Два тира предметов aTier {(41, 100), (23, 150), (67, 175)} и bTier {(11, 15), (22, 25)} - id и вес текущего + предыдущих. (Множители равны 1)
Порог = 175 x 1 + 25 x 1 = 200, результат генератора result = 154, например.
Теперь в цикле сверяется результат и вес if(result < getWeight(loopCounter) x 1):
154 < 100 - ложно, 154 < 150 - ложно, 154 < 175 - правда, берется id элемента с индексом loopCounter и с ним делаются дела.

Кажется та штука с утенком сработала, сейчас попробую сделать все одним списком но без сумм весов, но третьей ячейкой добавлю множитель: result < 0 x weight всегда будет ложным.
>>658591
#523 #658505
Аноны с опытом разработки на VAADIN, пилите свои фидбэки, какие подводные камни
>>658525
#524 #658525
>>658505
Медленное глючное говно.
>>658535
#525 #658535
>>658525
в каком плане медленнное?
какого размера приложения ты на нём делал, расскажи поподробнее
sage #526 #658537
Вопрос:
debian, openjdk, почему, несмотря на вхождение JavaFX в JRE 8, мне пришлось устанавливать его отдельным пакетом?
>>658563
#527 #658563
>>658537
Ну она не в openjdk наверное.
#528 #658591
>>658385
Вот, накалякал тебе, пока проект компилится:
http://ideone.com/rGJFg5
#529 #658604
>>658591

>class WeightedItemSelector


>class Item


>Объекты мне не нравятся


Спасибо. Я таки сделал через один список, так даже проще оказалось.
>>658607
#530 #658607
>>658604

>Объекты мне не нравятся


Зачем тогда вообще в джаву лезть?
>>658609
#531 #658609
>>658607
Потому что удобно.
#532 #658645
>>658591
Красиво написал

Другой-анон
#533 #658667
Есть какие-нибудь паттерны для статистических объектов, типа посчитать сколько времени функция выполнялась, сколько пикч загрузилось и т.д. Чтоб не захламлять объекты, которые инспектирую лишним кодом
>>658727
#534 #658727
>>658667
Вариант 1 - через аспекты, это прямо классическое их применение и, в общем, единственное
Вариант 2 - что-то типа observer'а. Кароч, делаешь класс-listener и у него методы типа onFunctionStart, onFunctionEnd, onPictureLoaded, ну ты понел.
>>658762
#535 #658762
>>658727
Аспекты я так понимаю это надо spring прикручивать?

А во 2 варианте, если правильно понял, то это надо будет в измеряемых объектах ставить все эти onFunctionStart(), onFunctionStop() вызывать.
>>658764
#536 #658764
>>658762

> Аспекты я так понимаю это надо spring прикручивать?


Можно и просто AspectJ
>>658857
#537 #658857
>>658764
Хотя я еще раз подумал и 2 вариант не так уж плох. Сделать всю ботву как в андройде, в листеренрах будет нужная логика, в инспектируемых классах главное в правильных местах все эти методы раскидать и сделать добавление, удаление listenerov через интерфейс листабал
>>658863
#538 #658863
>>658857
Зачем тебе это вообще?
>>658890
#539 #658880
Кто-нибудь работал с google drive через java? почитал доки, блядь че все так сложно, куча непонятных библиотек, хуевые инструкции в которых непонятно что написано, сэмплы только на для android, пиздец какой-то. Доброанон подкинь нормальную статейку как завести всю эту муть.
>>658923>>659160
#540 #658890
>>658863
Прога работает с vk, куча всяких сущностей типа user, message, photoAlbum, нужен способ вытягивать разную статистическую инфу во время работы, типа времени загрузки всех фоточек такого-то юзера, количество. + сейчас подумал что с такой архитектурой можно будет удобно сохранять сырые ответы, для последующей обработки в оффлайне
>>658934
#541 #658923
>>658880
У них и для ведроида не сильно понятней)
#542 #658934
>>658890

> времени загрузки всех фоточек


Нахуя?

> количество


Ты фоточки и так в файловой системе хранить будешь - можно легко и просто пересчитать.

> с такой архитектурой


Это вообще ортогонально.
>>659016
#543 #658995
Что думаете про CodeAcademy ?
На первых порах пойдет, или говно ?
>>658996>>658998
#544 #658996
>>658995
Codecademy
>>658998
#545 #658998
>>658995
>>658996
На всех порах говно.
>>659003
#546 #659003
>>658998
Хорошо, спасибо.
#547 #659016
>>658934
Проект больеш для обучения поэтому обкатываю разные концепции + такая инфа не лишняя для обратной связи с пользователем.

Количество фоток для прогресса загрузки, я не в конце их считать собираюсь, а в процессе работы.
#548 #659160
>>658880
На работе работал. В официальных доках всё расказано. Официальные библиотеки в свободном доступе. Может ты просто ТУГОДУМ?
>>659201
#549 #659201
>>659160
Тугодум или нет, но удобство использования нулевое, на дропбоксе тот же функционал завел за 15 мин и для этого не надо было раздувать проект дюжиной либ и приседать со штангой
#550 #659320
А есть какая-то книжка, или туториал чтобы игрушки простенькие пилить, а то как совсем тяжко идет.
Может повеселее будет.
16 Кб, 441x281
#551 #659323
Петян, как в яве/процессинге будет выглядеть элегантное разветвление с определёнными вероятностями. пока у меня лишь такая красота:

...
boolean doesTriggered(double treshold, double limit, double activate){
if (activate <= limit && activate >= treshold) return true;
return false;
}
double rand = random(1);
double shit = 0;
if (doesTriggered(shit, shit+=0.2, rand)) {println("Event X с 0.2");}
if (doesTriggered(shit, shit+=0.3, rand)) {println("Event Y с 0.3");}
if (doesTriggered(shit, shit+=0.1, rand)) {println("Event A с 0.1");}
if (doesTriggered(shit, shit+=0.4, rand)) {println("Event B с 0.4");}
...

страшно же, что пиздец, как это благородные господа делают?
>>659334>>659356
#552 #659334
>>659323
Вот так: println("Event X с " + num);
#553 #659356
>>659323
Вот тут как раз код для общего случая: >>658591
#554 #659401
ПЕРЕКАТ: >>659397 (OP)
ПЕРЕКАТ: >>659397 (OP)
ПЕРЕКАТ: >>659397 (OP)
ПЕРЕКАТ: >>659397 (OP)
#555 #660891
>>658157
В каждом треде одни и те же вопросы, пора в шапку добавлять.
http://shipilev.net/
http://www.infoq.com/java/
https://dzone.com/java-jdk-development-tutorials-tools-news
https://zeroturnaround.com/rebellabs/
https://plumbr.eu/blog
тапики уже советовали.
В остальных блогах по 1 записи в год, и мне лень их искать. Всё равно, всё годное происходит в твиттере. Из подкастов слушаю только русскоязычный разбор полётов.
#556 #663880
передал на сервер пакет в котором массив даблов но не знаю как его правильно распарсить что бы вновь получить мой массив
Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 8 марта 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски