Java中,charAt和indexOf识别不了控制台Scanner用户输入的“ ”空格。求助!

Java中,charAt和indexOf识别不了控制台Scanner用户输入的“ ”空格。求助!,第1张

Systemoutprintln("a bc"charAt(1));

  Scanner input = new Scanner(Systemin);

  String name = inputnextLine();

  Systemoutprintln(nameindexOf(" "));

  Systemoutprintln(namecharAt(3));

  Systemoutprintln(namesplit(" ")length);

您好!这个是能识别的呢

public class Test{

public static void main(String[] args){

new Test()getNum();

Systemoutprintln("-----------------------");

new Test()getNum2();

}

public void getNum(){

Scanner scanner = new Scanner(Systemin);

while(scannerhasNext()){

int num = scannernextInt();

Systemoutprintln(num);

}

}

public void getNum2(){

Scanner scanner = new Scanner(Systemin);

String str = scannernextLine();

String[] numList = strsplit("\\s");

for(String s : numList){

int num = IntegerparseInt(s);

Systemoutprintln(num);

}

}

}

上面这个当是demo, 都是取整数的

1 可以用nextInt()取下一个整形, 如果要其他类型, 有nextXXX()方法可以用

2 读取一行, 得一个字符串, 然后以空格分隔每一个数字

这个应该是你在使用scanner的时候,原理是采用空格对输入的内容进行分割,所以空格不被识别无法打印出来

你用Systemoutprintln(change);替换Systemoutprint(change);就能发现这一点

打印空格的话,既可以使用Systemoutprint("

");也可以用Systemoutprint("\0");来打印

Scanner是一个可以使用正则表达式来分析基本类型和字符串的简单文本扫描器!也就是控制台应用程序最为常用的文本输入方式!

BufferedReader是字符输入流中读取文本,缓冲各个字符,从而提供字符、数组和行的高效读取!速度要比Scanner快!而且也可以设置缓冲区的大小,或者可使用默认的大小。大多数情况下,默认值就足够大了。

Scanner取得输入数据的依据是空格符:如按下空格键,Tab键或者Enter键,Scanner就会返回下一个输入。所以说Scanner不能输入空格,如果你希望取得含有空格的字符串BufferedReader可以做到

以上就是关于Java中,charAt和indexOf识别不了控制台Scanner用户输入的“ ”空格。求助!全部的内容,包括:Java中,charAt和indexOf识别不了控制台Scanner用户输入的“ ”空格。求助!、java scanner怎么输入一串用空格分开的数字、Java如何在控制台输出空格等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9339647.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存