删除它
我在使用java Scanner类的nextLine()方法时遇到了麻烦。
我需要从控制台读取整行,带空格,我不能这样做,因为之前读取int/string会以某种方式影响该行的读取,并且我得到一个空字符串。
我可以用next()读取一个字符串,但我需要…之间的空格
下面是一段代码:
String[] parametri = new String[7];
System.out.println("Izberite vrsto transakcije:n 1.Dobavnica n 2.Izdajnican");
parametri[0] = String.valueOf(scan.nextInt());
System.out.print("Korisnik (id): ");
parametri[2] = String.valueOf(scan.nextInt());
//!!! here is the error
System.out.print("Korisnik (ime): ");
parametri[3] = scan.nextLine();
//!!! and here
System.out.print("Artikel: ");
parametri[4] = scan.nextLine();
System.out.print("Enota količine: ");
parametri[5] = scan.next();
System.out.print("Količina: ");
parametri[6] = String.valueOf(scan.nextInt());
输出是斯洛文尼亚语,这是一个交易参数输入
调用nextInt()
后,输入缓冲区中仍然有一个插入字符('n')。您需要使用scanner.skip("[rn]+")