扫描仪扫描=新扫描仪(System.in); scan.nextInt();不工作......?

时间:2018-05-23 20:10:14

标签: java html java.util.scanner

我是一个初学者 - 温和的java作家,我有一个我无法理解的问题,甚至不是原因。

我在类中有一些东西,一个文件写入器和--reader对象,一个扫描程序(system.in),以及一些字符串,long和int。我的想法是轻松编写一个.html文档,我已经把它钉了,但我创建了一个围绕包含scan.nextInt();的代码的for()循环,它在控制台中运行时就跳过了它。

代码的一小部分:

int amlinks = scan.nextImt();
for (int i = 0; i < amlinks; i++) {
  //refer file link1
  //link1, ln12
  System.out.print("[htmlbuilder.process]: text1 = ");
  String link1= new String(scan.nextLine());
  //refer text link1
  //text1, line12, ln12
  System.out.print("[htmlbuilder.process]: text2 = ");
  String text1 = new String(scan.nextLine());
  String link = new String("    <p><a href='" + link1 + ".html'>" + text1 + "</a>");
  writer.write(link);
}

一些方便的事实:

该课程名为htmlbuilder;

amlinks只是for ()循环的变量;

link1text1变量是链接所需的字符串;

link变量最终将写入文件

作家:

Writer writer = null;
write = writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(fileID + ".html"), "utf-8"));

fileID作为文件名;

//info之前说出下一段代码中的内容。

我希望你明白我在做什么,我知道我有自己的编码方式......

感谢您的帮助!

PS:如果你什么都不懂,可以问一些问题

1 个答案:

答案 0 :(得分:0)

当你们都使用了nextInt()和nextLine()时,请添加

  Object.nextLine();

喜欢那个

somthing=scan.nextInt();
somthing=scan.nextInt();
...
scan.nextLine();
somthing=scan.nextLine();
somthing=scan.nextLine();
...

确保您的输入项由实际的下一行读取,nextInt()方法意味着您的光标仍在当前行中。