gpt4 book ai didi

java - 查找字符串中最长的单词

转载 作者:行者123 更新时间:2023-12-01 21:33:54 26 4
gpt4 key购买 nike

以下是我的代码:

 String LongestWord(String a)
{
int lw=0;
int use;
String lon="";
while (!(a.isEmpty()))
{
a=a.trim();
use=a.indexOf(" ");
if (use<0)
{
break;
}
String cut=a.substring(0,use);
if(cut.length()>lw)
{
lon=cut;
}
lw=lon.length();
a=a.replace(cut," ");
}
return lon;
}

问题是当我输入一个字符串时,“一个男孩在公园里玩耍”

它返回最长的单词“ying”,因为当它第一次用“”替换“cut”时,它也会删除所有“a”,这样它就变成了第一次循环迭代后,“boy is pl ying in the p rk”

请找出问题所在?

提前致谢!

最佳答案

您已经知道问题所在:程序会执行不需要的替换。

因此,停止进行替换。在这个程序中,检查的单词被直接剪切,而不是使用有害的替换。

String LongestWord(String a)
{
int lw=0;
int use;
String lon="";
while (!(a.isEmpty()))
{
a=a.trim();
use=a.indexOf(" ");
if (use<0)
{
break;
}
String cut=a.substring(0,use);
if(cut.length()>lw)
{
lon=cut;
}
lw=lon.length();
a=a.substring(use+1); // cut the word instead of doing harmful replacement
}
return lon;
}

关于java - 查找字符串中最长的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37166978/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com