indexOf表示字符串中的空格

时间:2012-03-31 14:27:04

标签: java string find space

字符串中有一个空格,但是当我运行程序时,它返回-1,这意味着字符串中没有空格 这是代码:

import java.util.Scanner;


public class Main {

     public static void main(String[] args) {
         Scanner scan = new Scanner(System.in);
         String s = scan.next();
         System.out.println(s.indexOf(' '));
    }

}

5 个答案:

答案 0 :(得分:9)

Scanner.next()返回输入中的下一个标记,默认情况下,标记是以空格分隔的。即保证s不包含空格。

也许你的意思是String s = scan.nextLine();

答案 1 :(得分:5)

这对我来说非常合适。

System.out.println("one word".indexOf(' '));

这是因为Scanner的下一个方法。 check this

答案 2 :(得分:3)

扫描程序读取由空格分隔的文本,该空格可以是换行符,也可以是空格字符。这就是scan.next()将返回没有空格的String的原因。如果您需要换行符,请使用scan.nextLine()

答案 3 :(得分:3)

尝试

String s = scan.nextLine();

as scan.next()获取下一个不能包含空格的“单词”。

答案 4 :(得分:1)

使用scan.nextLine(),因为scan.next()会在遇到空白区域(标签,空格,输入)时读取,以便在看到空格时完成。你自己也可以通过打印来猜测这个! 成功!