JavaRush
AI Academy
new
Акция
Университет
Java FullStack
Python FullStack
AI Native Developer
new
Web FullStack
Обучение
Курсы
Задачи
Опросы
Игры
Помощь
График пинков
Стажировка
Сообщество
Пользователи
Форум
Чат
Статьи
Истории успеха
Активности
Отзывы
Подписки
Светлая тема
Вопрос
  • Отзывы
  • О нас
  • CS50
Начать
Начать обучение
Начать обучение
  • Все вопросы
JavaRush/Помощь по Java задачам/а вот и код
Tim Mukhamet
23 уровень
  • 20.03.2020
  • 353просмотров
  • 2комментариев

а вот и код

Вопрос по задаче Самая длинная строка
Java Syntax,  7 уровень,  6 лекция
Архивный

1. Создай список строк.
2. Считай с клавиатуры 5 строк и добавь в список.
3. Используя цикл, найди самую длинную строку в списке.
4. Выведи найденную строку на экран. Если таких строк несколько, выведи каждую с новой строки.

Требования:
  • В методе main инициализируй существующее поле strings класса Solution новым ArrayList<>
  • Программа должна считывать 5 строк с клавиатуры и записывать их в поле strings класса Solution.
  • Программа должна выводить самую длинную строку на экран.
  • Если есть несколько строк с длиной равной максимальной, то нужно вывести каждую из них с новой строки.
....
package com.javarush.task.task07.task0708; import java.util.ArrayList; /* Самая длинная строка */ import java.util.Scanner; import java.io.*; import java.util.*; public class Solution { private static ArrayList<String> strings; public static void main(String[] args) throws Exception { Scanner scanner = new Scanner (System.in); strings =new ArrayList< >(); for(int i=0;i<5;i++){ String r=scanner.nextLine(); strings.add(i, r); } int k=0; for(int e=0;e<5;e++){ if(strings.get(e).length()<k){ k=strings.get(e).length(); } } for(int j=0;j<5;j++){ if(strings.get(j).length()==k){ }} for(int e=0;e<5;e++){ System.out.println(strings.get(e)); }//напишите тут ваш код } }
0
Комментарии (2)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
hidden #2244663
Уровень 25
Expert
20 марта 2020, 18:34
for(int j=0;j<5;j++){
       if(strings.get(j).length()==k){
        }}
        for(int e=0;e<5;e++){
      System.out.println(strings.get(e));
Вот это тоже ерунда. Вы нашли максимальную длину строки, у вас это k Дальше в цикле перебираете строки. Если длина текущей строки равна k, просто ее печатаете и все. Что там второй цикл делает? К тому же со скобками полный бардак, это вообще не заработает.
0
Ksenia VolkovaJava Developer в DXCMaster
20 марта 2020, 18:29
У тебя переменная k изначально равно 0. Какой должна быть строка, чтобы для нее выполнилось это условие?
if(strings.get(e).length()<k)
Ты вообще какую строку хочешь найти - самую длинную или самую короткую?
0
Обучение
  • Курсы программирования
  • Регистрация
  • Курс Java
  • Помощь по задачам
  • Цены
Сообщество
  • Пользователи
  • Статьи
  • Форум
  • Чат
  • Истории успеха
  • Активности
Компания
  • О нас
  • Контакты
  • Отзывы
  • FAQ
  • Поддержка
JavaRushJavaRush — это интерактивный онлайн-курс по изучению Java-программирования c нуля. Он содержит 1200 практических задач с проверкой решения в один клик, необходимый минимум теории по основам Java и мотивирующие фишки, которые помогут пройти курс до конца: игры, опросы, интересные проекты и статьи об эффективном обучении и карьере Java‑девелопера.
Подписывайтесь
Язык интерфейса
Русский
English Українська
"Программистами не рождаются" © 2026 JavaRush
MastercardVisa
"Программистами не рождаются" © 2026 JavaRush