所以说我的程序有
String A = "hello";
我希望它将“A”粘贴到用户的输入空间中,以便用户可以修改它(例如退格键,添加更多文本),然后用户完成后,他们只需按 Enter 键,他们的输入就会覆盖“A”。
如果之前有人问过这个问题,我们深表歉意。
到目前为止,这是我尝试过的,但它只能添加文本,不能删除它们。
import java.util.Scanner;
public class Main
{
public static void main(String[] args) throws Exception {
Scanner ir = new Scanner (System.in);
String A = "Hello";
System.out.println(A);
A = A+ ir.nextLine();
System.out.println(A);
}
}
这是输出。当我尝试使用退格键时,它不会删除“Hello”中的任何字符
Hello // output
There // input
Hello There // output
要实现您的要求,您可以使用字符串生成器。在创建对象时启动它,并在 B 中获取用户输入。最后使用 String Builder 附加函数合并两个输出。
像这样:
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws Exception {
try(Scanner input = new Scanner (System.in)) {
String A = "Hello";
StringBuilder newStr = new StringBuilder(A);
System.out.println(A); // Current Value of A
String B = input.nextLine(); // Taking User's input
newStr = newStr.append(B); // Changing A's Value
System.out.println(newStr); // New value
}
}
}
输出:
Hello // A's default Value
There // Input value with blank space
Hello There // Final Output with String Builder