CodeGym
CodeGym University
学习
课程
任务
调查和小测验
游戏
帮助
提醒时间表
社区
用户
论坛
聊天
文章
成功故事
活动
评论
订阅服务
浅色主题
问题
  • 评论
  • 关于我们
开始
开始学习
立即开始学习
  • 全部问题
hidden #10628049
第 14 级
  • 29.05.2020
  • 439次阅读
  • 3个评论

请问我的代码有什么问题呢,自己测试时没问题的,检查一直通过不了

有关 任务的问题 最长的字符串
Java 语法,  第 7 级,  课程 6
已存档


1.初始化字符串列表。
2.从键盘读取 5 个字符串,并将其添加到此列表中。
3.使用循环找出列表中最长的字符串。
4.显示字符串。如果有多个最长字符串,则每行显示一个。

要求:
  • 在 main 方法中,将 Solution 类的现有字符串字段初始化为新的 ArrayList<>。
  • 程序应从键盘读取 5 个字符串,并将其写入字符串列表中。
  • 程序应显示最长的字符串。
  • 如果有多个最长字符串,则需要每行显示一个。
package zh.codegym.task.task07.task0708; import javax.swing.*; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.List; import java.util.Scanner; /* 最长的字符串 */ public class Solution { private static List<String> strings; public static void main(String[] args) throws Exception { strings = new ArrayList<>(); Scanner scanner = new Scanner(System.in); for (int i = 0; i < 5; i++) { strings.add(scanner.next()); } ArrayList<String> maxList = new ArrayList<>(); int maxMum = 0; for (String s : strings) { if (s.length() > maxMum) { maxMum = s.length(); maxList.clear(); maxList.add(s); } else if (s.length() == maxMum) { maxList.add(s); } else { continue; } } for (String s : maxList) { System.out.println(s); } } }
0
评论 (3)
  • 受欢迎
  • 新
  • 旧
你必须先登录才能发表评论
pyw
级别 8 ,Changzhi,China
29 六月 2020, 07:35
for (int i = 0;i<5;i++) strings.add(reader.readLine()); int len = strings.get(0).length(); for (int i = 0;i<5;i++) if (strings.get(i).length()>=len) len = strings.get(i).length(); for(int i = 0 ; i<5;i++) if (strings.get(i).length() == len) System.out.println(strings.get(i));
0
pyw
级别 8 ,Changzhi,China
29 六月 2020, 07:36
先找出字符串中最长的,然后再循环输出
0
Leo Backend Developer 位于 YouthlabTech
9 六月 2020, 02:03
continue 多余了 别的看不出来
0
了解
  • 注册
  • Java 课程
  • 任务帮助
  • 定价
  • 游戏项目
  • Java 语法
社区
  • 用户
  • 文章
  • 论坛
  • 聊天
  • 成功故事
  • 活动
  • Affiliate Program
公司
  • 关于我们
  • 联系方式
  • 评论
  • 新闻发布室
  • CodeGym 教育
  • 常见问题
  • 支持
CodeGym CodeGym 是一个从零开始学习 Java 语言编程的在线课程。本课程是初学者掌握 Java 语言的绝佳方式。它包含 1200 多个可即时验证的任务,以及基本范围内的 Java 基础理论。为了帮助你在教育上取得成功,我们实现了一组激励功能:小测验、编码项目以及有关高效学习和 Java 语言开发人员职业方面的内容。
关注我们
界面语言
程序员不是天生的 © 2023 CodeGym
MastercardVisa
程序员不是天生的 © 2023 CodeGym
This website uses cookies to provide you with personalized service. By using this website, you agree to our use of cookies. If you require more details, please read our Terms and Policy.