【发布时间】:2015-09-23 11:10:33
【问题描述】:
我想要 5 个名字中最长的名字。我想我应该使用compareTo() 方法还是length()?
输出必须是这样的:
enter 5 names :
Joey
Mark
Catherine
Zachery
Foster
Longest name is Catherine.
我应该使用什么方法以及如何使用?到目前为止,这是我的代码:
Scanner x = new Scanner(System.in);
String name = ""
System.out.print("Enter 5 names");
name = x.nextLine();
name2 = x.nextLine();
name3 = x.nextLine();
name4 = x.nextLine();
name5 = x.nextLine();
if(name.compareTo(name2)>0) //is this method right?
【问题讨论】:
-
你应该使用
String#length()和for loop:) -
@TheLostMind 和数据结构(数组、列表...)
-
@ReutSharabani - 可能是,但不是强制。您可以找到当前姓名和姓氏中较大的一个 :)
-
longest = Collections.max(Arrays.asList(name, name2, ...), Comparator.comparing(String::length)). -
重点是,将它们存储在
name、name1...namen并不是存储它们的好方法。这不是存储数据的好方法。如果您完全放弃存储它们而不是是 - 不需要存储它们的最长名称。
标签: java compareto string-length