java - 尝试从字符串中检索第一个最长的单词,其中句子包含相同长度的字符串?

标签 java string loops for-loop split

public class Challenge{                                             
public static String longestWord(String sentence){                                              
    String s= sentence;                                             
    String[] word=s.split(" ");                                             
    String four=" ";                                                
    for(int i=0;i<word.length;i++){                                             
      if(word[i].length()>=four.length()){                                              
        four=word[i];                                               
      }                                             
    }                                               
  return four;                                              
} 

我在这里遇到的困难是,例如,如果我有句子“这有很多四长的”,则代码默认打印“四”而不是我需要的“这个” - 我不知道如何实现允许我从给定句子返回第一个最长字符串的代码。任何帮助将不胜感激。

最佳答案

当长度等于当前单词时,您只需停止覆盖存储的“最长单词”即可。在 if 语句中将 >= 替换为 > 应该可以解决问题。

关于java - 尝试从字符串中检索第一个最长的单词,其中句子包含相同长度的字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53572962/

相关文章:

c - 用C中的另一个字符串替换字符串中的char

android - 创建无限循环android的最佳方法

java - 尝试使用 maven 安装项目时出现 NoClassDefFoundError

寻找长度为 k 的第一个重复子串的算法

java - 如何替换给定模式中的 '0' 值?

string - 如何在没有额外分配的情况下将 u32 的字符串表示形式写入字符串缓冲区?

C# 如何避免在 .Split() 中拆分名称?

PHP 重复循环,直到没有匹配的记录

java - 在 android 中连接到 pandorbot 服务器时出现问题

java - 有没有办法稍后使用 Twilio 发送短信