for (String url : urls) {
String protocol = checkProtocol(url);
String domain = checkDomain(url);
Anonymous #2501635
10 уровень
Как правильно понять, что означает фрагмент кода в задаче?
Обсуждается
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Dop
28 июня, 00:35
for (String url : urls)
urls это массив типа String, цикл for перебирает все значение из этого массива, начиная с первого индекса заканчивая посслелним, по факту этот цикл это скоращение код "for(int i = 0; i < urls.length; i++)", по факту обысное сокращение написанного кода. Такое сокращение кода помогает легче четать код, а также уменьшает количкство кода, что также очень удобно и полезно
0
safelogj Android Developer
27 июня, 15:53
тут перебираются все строки из массива строк urls, каждая строка из этого массива, в момент перебора доступна через переменную String url,
сначала она отправляется в метод checkProtocol(url); и потом в метод checkDomain(url);
0
Anonymous #2501635
вчера, 04:51
Здравствуйте.Спасибо за ответ,понятно.Хотел спросить:с какой целью объявлены переменые String protocol и String domain ?Если не ошибаюсь,то в переменных сохранён результат работы методов-результат проверки.Непонятно,как вернуть результат проверки?Как соотнести переменные protocol и domain c результатом проверки?Я вставил фрагмент решения задачи,но решение неверно.Если вам не трудно,взгляните,где допущены ошибки?
public static String checkProtocol(String url) {
String result;
String protocol = result;
if (url.startsWith("https://") || url.startsWith("http")) {
return result;
else
return "неизвестный";
}
}
public static String checkDomain(String url) {
String resultt;
String domain = resultt;
if(url.endsWith(".com") || url.endsWith(".net") || url.endsWith(".org") || url.endsWith(".ru"))
return resultt;
else{
return "неизвестный";
}
}
}
0
LuneFoxJava Developer в BIFITExpert
вчера, 10:45
Они объявлены, чтобы сохранить результат проверки. Если протокол или домен валидные, то возвращается определённая строка. Если невалидные. то возвращается слово "неизвестный".
По коду: зачем объявлять пустую String result, а затем приравнивать к ней ещё одну новую String protocol / String domain, которая далее не исползьуется?
Второе - при успешной проверке всегда возвращается result, который является пустой строкой. Это точно правильное решение?
Чтобы вернуть результат проверки, нужно в result что-то положить, прежде чем его вернуть из метода.
0
safelogj Android Developer
вчера, 11:52
у меня нет доступа к задаче и я не знаю о чём она, но если смотреть на решения в комментариях, например это
то переменные String protocol и String domain забирают результат из методов проверки, и дальше просто выводят его в составе одной строки в консоль.
а сами методы возвращают конкретные результаты, конкретные строки, которые у вас не заданы в ваших методах проверки, вы в условиях проверки используете множественное условие, то есть ИЛИ, а надо конкретно возвращать конкретную строку, com или ru или org или net
например как тут
а ваш код выглядит как будто вы проверяете не конкретные домены, а просто является ли строка интернет адресом. если в конце нашёлся правильный хвостик. тогда вернём типа OK на такую проверку, плюс у вас фигурных скобок не хватает в коде, до и иногда после ELSE
0