我是编程新手。这是使用JAVA查找最长字符串的有效方法吗?任何反馈都表示赞赏。
public static void main(String[] args) {
String [] letterlist = {"Hello" , "my" , "name" , "is" , "John" , "Smith"};
int length = letterlist.length;
int currentchar;
int nextchar;
String getcurrentchar;
String getnextchar;
String longest = " ";
for(int index = 1; index <length; index++)
{
getnextchar = letterlist[index];
nextchar = getnextchar.length();
getcurrentchar = letterlist[index-1];
currentchar = getcurrentchar.length();
if(nextchar > currentchar)
{
longest = getnextchar;
}
}
System.out.println(longest);
}
答案 0 :(得分:2)
我们可以用两行代码完成:
List<String> list = Arrays.asList(letterlist);
String longest = Arrays.stream(letterlist).max(Comparator.comparingInt(String::length)).get();
受此代码审核问题的启发:
答案 1 :(得分:0)
为了正确学习,我建议您尝试迭代字符串数组并更新字符串的值,而不是使用java 8流类。 为了获得字符串的字符数,您可以使用字符串类的方法长度。返回字符串的字符数。 如果要比较和更新哪个是迭代的最长字符串迭代,请声明一个空字符串。