将单词放在字符串数组中

时间:2015-02-23 03:08:37

标签: java arrays string

public static String[] wordList(String line){
    Scanner scanner = new Scanner(line);
    String[] words = line.split(" ");
    for( int i=0; i<words.length; i++)
    {
        String word = scanner.next();
        return words[i] = word;
    }
    scanner.close();
}

return words[i] = word;行上,我收到错误消息“无法将String转换为String []”。帮助

3 个答案:

答案 0 :(得分:2)

line.split() 已经为您提供了一个数组,您只需要返回该数组:

public class Test {
    public static String[] wordList(String line){
        return line.split(" ");
    }

    public static void main(String args[]) {    
        String xyzzy = "paxdiablo has left the building";
        String[] arr = wordList(xyzzy);
        for (String s: arr)
            System.out.println(s);
    }
}

运行它给出:

paxdiablo
has
left
the
building

请注意每个单词之间的一个空格。如果你想要一个使用&#34;任意数量的空格&#34;的分隔符的更通用的解决方案,你可以改用它:

public static String[] wordList(String line){
    return line.split("\\s+");
}

可以找到String.split() {{1}}可以使用的正则表达式。

答案 1 :(得分:1)

String[] words = line.split(" ");

你需要的只是。 split()方法已经返回一个字符串数组。

答案 2 :(得分:0)

假设您尝试按空格分割,您的方法应如下所示:

public static String[] wordList(String line){
    return line.split(" ");
}