Java 如何使用缓冲读取器将预先确定的文本设置为用户输入?
基本上,我如何要求用户输入一个从一开始就给出一个默认值供用户编辑。例如,在文本字段中已键入默认值“1”时,要求用户给出一个值。如果您使用的是控制台,则该值无效。它只读取通过输入流实际输入的内容。您可以显示“1”,但这是输出,而不是输入。另外,不要期望他们能够删除“1” 如果他们不输入任何内容,您可以假设一个默认值。 您还可以收集他们的输入,并在读取后在字符串的开头粘贴1 另外,为什么要这样做?在BufferedReader上调用Java 如何使用缓冲读取器将预先确定的文本设置为用户输入?,java,Java,基本上,我如何要求用户输入一个从一开始就给出一个默认值供用户编辑。例如,在文本字段中已键入默认值“1”时,要求用户给出一个值。如果您使用的是控制台,则该值无效。它只读取通过输入流实际输入的内容。您可以显示“1”,但这是输出,而不是输入。另外,不要期望他们能够删除“1” 如果他们不输入任何内容,您可以假设一个默认值。 您还可以收集他们的输入,并在读取后在字符串的开头粘贴1 另外,为什么要这样做?在BufferedReader上调用readLine()方法不会创建类似于GUI应用程序中文本输入的“文
readLine()
方法不会创建类似于GUI应用程序中文本输入的“文本字段”
从理论上讲,您想要做的事情可以使用一个库,例如。您必须编写一个方法,该方法在初始化为包含默认值的字符堆栈中跟踪“输入”。然后打印默认值,并逐个读取按键:
- 对于大多数按键,将按下的键按到堆栈中,然后打印,使其显示在控制台上
- 按下退格键时,从堆栈中弹出并打印
转义序列,以模拟控制台中的退格\b
- 在enter键上,停止读取按键,打印
,并以字符串形式返回堆栈内容\n
\b
拥有默认选项的更简单、几乎肯定更好的方法就是告诉用户默认值是什么,让他们按“回车”而不键入任何内容来获得默认值