gpt4 book ai didi

java - Scanner.nextLine() 控制台输入问题

转载 作者:行者123 更新时间:2023-12-01 23:07:11 26 4
gpt4 key购买 nike

我在使用 java Scanner 类的 nextLine() 方法时遇到问题。

我需要从控制台读取带有空格的整行,但我不能这样做,因为先前读取的 int/string 在某种程度上影响了该行的读取,并且我得到了一个空字符串。

我只能使用 next() 读取一个字符串,但我需要之间的空格...

这是一段代码:

        String[] parametri = new String[7];

System.out.println("Izberite vrsto transakcije:\n 1.Dobavnica \n 2.Izdajnica\n");
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("[\r\n]+")

删除它

关于java - Scanner.nextLine() 控制台输入问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22591602/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com