Закрепляем адаптер

  • 10
  • Недоступна
Адаптировать Customer и Contact к RowItem. Классом-адаптером является DataAdapter. Инициализируйте countries перед началом выполнения программы. Соответствие кода страны и названия: UA Ukraine RU Russia CA Canada
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (116)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Егор20 уровень
позавчера, 09:33
избавиться от скобочек и тире в номере можно при помощи replaceAll =)
Maxim20 уровень, Москва
понедельник, 14:24
Эту задачу мне было проще решать чем похожую предыдущую, т.к. в той я бегло прочитал задание и сделал по требованиям для этой задачи и получил массу ругани от валидатора)
Nordis24 уровень, Санкт-Петербург
10 августа, 14:13
Для меня в этой задаче показалось странным следующее : 1. Не проще бы было изначально countries сделать таким countries.put("Ukraine","UA"); countries.put("Russia","RU"); countries.put("Canada","CA"); Было бы проще работать. (Зачем идти через задний проход?) Единственное оправдание на это , типо нас поднатаскать . А не забыли ли они Map.Entry ?! 2. Зачем в "callto://" два слеша. Мне этот момент не понятен. Ну да ладно...
Alex_Krasiuk22 уровень, San Francisco
18 июля, 16:57
Лехко
АртемGeek25 уровень, Москва
27 мая, 20:22
После позапрошлой задачи зашло на УРА, осталось только поменять и немного подредактировать код. Может кому пригодиться , попробовал новую запись, валидатор принял:
String[] name = contact.getName().replaceAll(",","").split(" ");
return name[1];
А регулярку достаточно было написать:
replaceAll("[()-]","")
Artem Yaremchuk26 уровень, Омск
31 мая, 14:18
такая регулярка еще эффективнее
String call = "callto://+" + contact.getPhoneNumber().replaceAll("\\D","") ;
Александр23 уровень, Казань
18 марта, 12:37
Кто в комментах на даты жаловался, что не разбирается - а я в регулярках.
Nordis24 уровень, Санкт-Петербург
10 августа, 13:54
Тут человек объясняет всё о регулярках Сюда. Там у него около 20 видео. Советую посмотреть все. Сразу скажу инфы море , и сразу всё не запомнишь. Через пару дней забудешь. Я смотрел по 3 раза всё в течении нескольких месяцов . Что бы осталось в голове что к чему .
Николай28 уровень
4 марта, 19:18
Тут скорее задача на внимательность.
S3R3N1TY37 уровень, Санкт-Петербург
8 февраля, 13:11
Очень хороший сайт с практикой regex и самопроверкой. После прохождений уроков там будете решать в одну строку все)) https://regexone.com/
return "callto://+" + contact.getPhoneNumber().replaceAll("\\W","");
return contact.getName().split(",\\s",2)[0];
Антон26 уровень, Москва
31 марта, 20:04
вот это уровень!
NewBuy25 уровень, Санкт-Петербург
13 апреля, 09:43
Лучше ведь использовать "\\D" вместо "\\W"?
MrKermit22 уровень, Москва
23 апреля, 16:47
Наверное лучше
return "callto://"+contact.getPhoneNumber().replaceAll("[^\\+\\d]","");
Заменить все кроме "+" и "цифр"
fedor20 уровень, Москва
30 апреля, 13:01
этого вполне достаточно
num.replaceAll("[()-]",""))
// =найти любое из перечисленных "(", ")", "-" и заменить на ""
MrKermit22 уровень, Москва
3 мая, 11:17
Да, красивее)
lesaoni23 уровень, Москва
7 июня, 12:36
Спасибо за хороший ресурс
Voffka23 уровень, Киев
1 февраля, 15:13
Для красоты
str = str.replaceAll("\\D+","");
в регулярках d означает число, а большая буква всегда означает инверсию (D - не число)
Михаил24 уровень
4 февраля, 20:54
а знак плюса в конце сам добавляешь? я так сделал
replaceAll("[^+\\d]", "");
Nik24 уровень
9 февраля, 08:24
скиньте ссылку плз. Хочу разобраться в этом тоже. только на русском)
Эмиль Кан29 уровень, Москва
17 марта, 00:48
Красиво
Даниил34 уровень
27 января, 21:40
Решил 10520 с 3 попытки, и то потому что не хотел валидатор принимать номер телефона полученный с помощью класса Pattern используя метод pattern.split(String string);, но при этом результат был верный при всех вариантах. Пришлось тут подсмотреть способ через Character.isDigit(); который валидатор и принял. Так что имейте ввиду...