Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java.util.scanner方法未在for循环的基本情况下执行?_Java - Fatal编程技术网

java.util.scanner方法未在for循环的基本情况下执行?

java.util.scanner方法未在for循环的基本情况下执行?,java,Java,我是Java编程新手,我只想打印用户输入的n个字符串,其中“n”也是用户输入的测试用例数。下面是我的代码……但是nextLine()方法没有从基本情况下的用户那里获取输入(即在inti=0)。 代码是 import java.util.Scanner; import java.io.InputStreamReader; public class Stringprint{ public static void main(String[] args){

我是Java编程新手,我只想打印用户输入的n个字符串,其中“n”也是用户输入的测试用例数。下面是我的代码……但是nextLine()方法没有从基本情况下的用户那里获取输入(即在
inti=0
)。 代码是

import java.util.Scanner;
import java.io.InputStreamReader;

         public class Stringprint{
         public static void main(String[] args){  
             String str;
             int testcase;
             Scanner scanIn = new Scanner(System.in);
             System.out.println("Enter the number of testcases :");
             testcase = scanIn.nextInt();
           for(int i = 0; i < testcase ; i ++){

                System.out.println("Enter the String" + i + ":");
                str = scanIn.nextLine(); 
                System.out.println(string);
     }
  }

}
那么我哪里出错了..为什么它不在
I=0
处询问输入字符串?我在这里做错了什么吗?

Scanner.nextInt()正在将光标移过4,但移过新行


第一次调用Scanner.nextLine()时,输入以新行开始,因此返回空行。

在调用
scanIn.nextLine()之后和循环之前,尝试使用
scanIn.nextLine()
。调用
nextInt()
后,该行尚未结束。因此,调用
nextLine()
将返回新行字符

一个简单的修复:


添加“scanIn.nextLine();”在“testcase=scanIn.nextInt();”之后要吃掉nextLine()未使用的'\n'字符。

问题是由于nextLine()。改为使用next(),它会很好地工作..可能的重复可能会很清楚:在这里你们可以更好地理解谢谢大家…:)你的评论对我帮助很大:)
Enter the number of testcases :
4

Enter the String0:

Enter the String1:

hello

hello

Enter the String2:

hai

hai

Enter the String3:

bye

bye