在提示输入后添加文本

adding text after prompt for input

我是 Java 的新手,我什至不知道我正在尝试做的事情在 cmd 中是否真的可行,但我想知道是否有办法向用户询问输入的同时在输入的右边显示一些东西,比如:

输入体重:_公斤

例如指定我想要重量的单位

这是我目前的代码示例

import java.util.*;

public class ScannerPrompt {

  public static void main(String[] args) {

    int[] listOfIntegers = new int[10];

    Scanner s = new Scanner(System.in);

    for (int i = 0; i < 10; i++) {
      System.out.print("Enter num: ");
      int num = s.nextInt();
      listOfIntegers[i] = num;
    }

  }
}

您可以使用回车 return \r 将光标重新定位到行首

System.out.printf("%20skg\rEnter num: ", " ");

我们可以巧妙地使用\r

import java.util.Scanner;

public class JavaApplication2 {
  public static void main(String[] args) {
        int i=0;
        Scanner s = new Scanner(System.in);
        System.out.print("Enter num: __kg\r");
        System.out.print("Enter num: ");
        i = s.nextInt();
        System.out.println("\n"+i);     
    }
}

工作原理:

  • 我们打印 Enter num: __kg\r 使光标​​位于行首
  • 现在如果我们打印一些东西,它会覆盖第一个消息,因为光标在第一个位置,所以我们用相同的字母覆盖,但只覆盖使光标位于所需位置的部分。因此我们打印 Enter num:

不要使用 println,因为它会在末尾插入 \n,并且不要在 IDE 中进行测试,而是使用系统的控制台。