Java:编写一个静态函数,将字符串作为参数并返回字符串中的第三个单词?

Java:编写一个静态函数,将字符串作为参数并返回字符串中的第三个单词?,java,string,static,return,Java,String,Static,Return,编写一个静态函数,将字符串作为参数并返回 字符串中的第三个单词。使用以下命令调用函数 字符串: 这是我的绳子 将结果打印到控制台 java新手,在(java新手)上很难解决这个问题。我不知道如何解决这个问题。我已经知道了如何使用数组来获得结果,但是数组是一个可能的答案吗?我遇到的最大问题是返回字符串的第三个单词 编辑: 这是我目前想要知道的,只是不确定它是否正确 public class problem4 { public static void main(String[] args)

编写一个静态函数,将字符串作为参数并返回 字符串中的第三个单词。使用以下命令调用函数 字符串:

这是我的绳子

将结果打印到控制台

java新手,在(java新手)上很难解决这个问题。我不知道如何解决这个问题。我已经知道了如何使用数组来获得结果,但是数组是一个可能的答案吗?我遇到的最大问题是返回字符串的第三个单词

编辑:

这是我目前想要知道的,只是不确定它是否正确

public class problem4 {

    public static void main(String[] args) {
        String[] str; 
        str = strArray();
        System.out.println(str[2]);
    }

    public static String[] strArray(){
        String[] array = {"This", "is", "my", "string"};
        return array;
    }
}

这是在正确的轨道上,但这并不完全是问题所要求的

你错过了两件大事。首先,您需要将其放入一个接受字符串的静态函数中(这意味着您必须自己创建,不能使用main)。看起来是这样的-

public static String getThirdWord(String s){
其次,假设您得到一个
字符串
数组,那么您的逻辑就会工作。但问题是,您得到的是一个
字符串
。这意味着您必须先做一些工作,然后才能使用(基本正确的)数组表示法。这是你需要的

String[] words = s.split(" ");
这将获取输入,并将其“拆分”为空间周围的部分。实际上,您将返回单个单词的数组

然后可以开始使用数组表示法-

return words[2];

但是:您可能会得到少于三个单词的输入!这将导致在执行
words[2]
操作时引发异常。您的问题没有说明在这种情况下要做什么,但是您几乎肯定需要通过执行
来检查大小,如果(words.size>2)

您是否尝试过解决此问题?如果是这样,请发布它,我们很乐意为您提供帮助。您是否检查了
split()
substring()
indexof()
以代码的形式向我们展示您到目前为止的计算结果。我们不会泄露直接的密码。试着想出一个解决方案,问一个具体的问题。我不明白为什么每个人都会投反对票。他显然是新来的,他向我们展示了他的尝试(这是正确的)。让这个家伙放松一点…如果单词之间有多个空格,被单个空格分开可能会导致一些问题。当然,这是特殊情况,但需要关注。关于s.trim().split(“\\s+”)@dragon66我不认为这是理想的输入,因为这是初学者的问题。我不想把它弄得太复杂,正则表达式就可以做到这一点。这里有很多我认为不会成为问题的东西(即空值)没有考虑到。谢谢你的帮助,我会记住的。我之所以犹豫使用s.split是因为我们还没有深入到材料中,而我即将学习的测试目前只涵盖了某些章节。