Давай представим ситуацию, что с одной стороны у нас есть некая база данных, в которой хранятся данные.
База данных имеет стандартный набор команд (методов) для предоставления данных, они описаны в интерфейсе IncomeData.
Примеры представления данных приведены в комментариях около каждого метода. С другой стороны есть пользователи
Адаптация нескольких интерфейсов
- 20
Недоступна
Комментарии (319)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
🟡ampersand
20 июня, 18:15
код для теста
+1
[M210] Java Developer
14 июня, 14:10
Мне как то мое решение нравится больше, чем "правильное". По-крайней мере оно читабельное и его можно понять))
0
Виктор
14 июня, 09:43
так тоже можно превратив номер в массив чаров
0
Виктор
28 мая, 08:24
Может быть кому-то пригодится для тестов:
+2
Виктор
28 мая, 08:24
и main
+2
MapXyZ
25 мая, 09:18
Почти всегда пытаюсь решить задания не читая Requirements, потому что там очень часто получаю подсказки по решению... если считаю , что данных мало, конечно лезу и туда...
В этот раз меня валидатор именно здесь и поймал:
4. Класс IncomeDataAdapter должен содержать приватное поле data типа IncomeData.
ну неужели так важно что я переменную назвал не data а incomeData :)
+1
Виктор
28 мая, 08:26
та же самая фигня )
Idea vs Validator!
Fight!
+1
CyberBoar
4 апреля, 09:21
Вот бы научиться так же строки форматировать, как в правильном решении, которое предлагают.
Решал через стрингбилдер.
+2
Виктор
14 июня, 09:46
Читайте, даже я тормоз понял:
ФОРМАТИРОВАНИЕ ЧИСЕЛ И ТЕКСТА В JAVA.
+1
Darya Hom
23 марта, 08:18
А как подебажить такую задачу, если не переписывать весь код?
Решила через цикл while + stringbuilder , но так и не поняла, что должно быть написано в main, чтобы потестировать код перед валидацией.
В итоге копировала метод getPhoneNumber в main, убирала оттуда data и тестировала оставшееся. Что-то подсказывает, что есть более правильные способы.
0
Zuzu
27 марта, 23:25
в мейне вот что должно быть
+4
Darya Hom
28 марта, 04:52
Спасибо😊
0
Батислав Баткин душа в колесе сансары
5 апреля, 18:16
Огромное спасибо!)
0
Yuri_S Инженер-конструктор 2к.
21 января, 09:21
Легчайшая, даже в требования не смотрел, все ясно из условия стало.
А еще по хорошему надо менять возвращаемый тип функции getPhoneNumber(), ибо не всякий номер, даже без кода страны, влезет в int.
0
Bakyt Sarmanov
29 января, 08:53
"даже в требования не смотрел" a как интересно понимаете из условия, что нужно создать приватное поле data типа IncomeData ?
+1
Yuri_S Инженер-конструктор 2к.
29 января, 09:29
Данных в условии достаточно, как писать адаптер мы разбирали.
Я при первом решении задачи копирую весь текст условия (кроме требований) себе в ide, и размешаю условие в виде коментария над кодом, как-то так:
Чтобы проще и быстрее было к нему вернуться, не прыгая по вкладкам в ide.
В данной задаче этого хватило для решения. Это обыкновенный адаптер, позволяющий связать интерфейсы одного уровня абстракции, но с разным представлением одних и тех же данных. 0
Bakyt Sarmanov
29 января, 09:55
я про строгое требования приватного поле типа IncomeData , которое должно быть именно data
, а не например +2
Yuri_S Инженер-конструктор 2к.
29 января, 10:04
К сожалению уже не имею возможности проверить, пройдет ли валидацию задача с иным именем поля.
Возможно валидатор и в моем случае споткнулся об это, не утверждаю о прохождении валидатора с 1 попытки, глупо вообще считать попытки и расстраиваться если в целом верное решение из-за чистой формальности завернули.
Однако сам принцип построения решения был ясен из условия и имевшегося кода.
"Не смотрел в требования" - это не бравада, а попытка думать своей головой.
В требованиях часто расписана роадмап что сделать и в какой последовательности, это несколько размягчает мозг. Не думаю что реальные задачи настолько сформулированны, что остается только механически набрать нужные строки в нужных местах.
+1
Neonila Kravtcova
2 февраля, 11:38
Это вообще несправедливо, согласна с вами! Валидатор затребовал назвать поле именно data, а не incomeData, как предложила Idea. Только у вас как-то странно сначала имя поля, а затем его тип написан )
+1
Bakyt Sarmanov
2 февраля, 11:55
Спасибо, исправил))
+1
KOTNinja
2 марта, 07:37
О, про incomeData вместо data это я, как раз тут и допустил ошибку🤪
0
Сергей Коваленко
12 января, 07:45
Форматирование строк
0
Михаил Кладовщик с кучей времени
8 января, 09:39
Простой короткий способ отформатировать номер
Но есть один минус - его не пропустит валидатор) +2
Yuri_S Инженер-конструктор 2к.
21 января, 09:22
Простых(коротких) путей не искал, искал понятные.
+2
Mary Grimm
21 февраля, 15:41
(String.format("%010d", phone).replaceFirst("(\\d{3})(\\d{3})(\\d{2})(\\d+)", "($1)$2-$3-$4"))
+6
Светлана
6 мая, 14:45
Это гениально!
0