Найти подстроку

  • 24
  • Недоступна
Метод getPartOfString должен возвращать подстроку начиная с символа после 1-го пробела и до конца слова, которое следует после 4-го пробела. Пример: "JavaRush - лучший сервис обучения Java." Результат: "- лучший сервис обучения"
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (198)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Maks Panteleev
25 уровень, Москва
5 мая, 15:31
if(string.lastIndexOf(" ")<3) throw new TooShortStringException();
ему видишь ли не понравилось) надо было попробовать туда еще контейнс пробел дописать)
Максим Дудин
23 уровень, Калининград
26 апреля, 13:20
Вот решил в "три секунды" вывод подходит, сижу и уже боюсь жать на проверку =)) По любому что-то будет опять не так...
Максим Дудин
23 уровень, Калининград
26 апреля, 13:26
Не она прошла прикиньте.. с первого раза... та ладно!!! Если решить сначала последнюю, а потом первую (которую я "вкурил" только подсмотрев готовое решение, а до того просто не догонял, что от меня хотят), то вот эта вторая вообще не "hard" ни разу... Вух отлегло... А то после первой задачи начал впадать в депрессию, от того, что как был тупым так и остался... смотрю в текст и вообще не понимаю что тут нужно делать.
Anonymous #2497433
34 уровень
16 апреля, 08:12
где тот человек, который все время хвастался решением задачи с первого раза? "... Среднее количество попыток для этой задачи 4.88." с таким средним показателем вряд ли он решил с первого раза. клоун
Умалат работаю в totamtosyam
27 апреля, 14:34
это точно не я, но это возможно чел))
Igor
27 уровень, Минск
30 апреля, 10:26
Умалат, окай. 1. Как догадался, что нужно наследовать класс TooShortStringException от RuntimeException, а не просто от Exception. 2. Как догадался, что нужно выбросить исключение на минимум 4 пробела? А не допустим так:
if (string == null || string.length() < 2 || !string.contains(" ")) throw new TooShortStringException();
В условии нет намёка, что строчки не могут приходить и с одним пробелом или просто пробелом или множество пробелов:
string = "         ";
А понятие "корректных данных" не было установленно. Мы не знаем, что подразумевает автор задачи.
Алексей
25 уровень, Night city
29 марта, 17:24
А можно без try catch сделать сплит по пробелам и проверить?
if (array.length < 4)
    throw new TooShortStringException();
или неправильно так делать?
Shelchek
26 уровень, Москва
5 апреля, 10:31
Технический можно, только еще нужно добавить выброс исключения, если передаваемая строка null.
Dark_Side Android Developer в Harman (Samsung)
16 марта, 12:23
Написала элегантное решение через стримы
String[] words = string.split("\\s");
StringBuilder sb = new StringBuilder();
Arrays.stream(words).skip(1).limit(4).forEach(word -> sb.append(word).append(" "));
Антон Full Stack Developer
5 марта, 18:30
Вот это конечно прикол! Решил с первого раза правильно, но каким-то чудом (ткнул в идее) подставился другой эксепшн с похожим названием!!! Переписал тремя разными способами и только потом увидел отличия🤯
Антон Володин
26 уровень, Комсомольск-на-Амуре
4 марта, 10:55
Easy!👍
Е К
33 уровень, Краснодар
22 февраля, 22:59
Привередливый валидатор - не принял в одном ифе проверку на количество пробелов(сделал сплитованием) и на null... Надо ему обязательно null отдельно проверять - минус пара траев. Но задачка после первой кажется супер изи
jimaltair
36 уровень, Калининград
2 февраля, 14:38
не забудьте сделать так return ....trim();
Даниил Александрович
31 уровень, Тамбов
18 февраля, 11:00
зависит от того чем резали.
Anton Rahm
25 уровень, Marburg
19 января, 20:04
Оказывается так просто решается! ломал себе голову думая что нужно выводить после 1го и 4 го и так по циклу, к примеру если строку вводим на 200 слов, то и выводить к примеру потом уже не 1й индекс а по циклу 1-4,5-9, 10-14... он бы около 50 слов, ктото знает как такое реализовать,? вопрос знатокам! а то как то скучно- задание по программированию, а автоматизации нет, в мануальном режиме пишешь., что выводи 1, 2,3,4 элемент аррэя и готово!