2015-06-14 143 views
2

我是新来的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; 
    } 

    } 
} 
+0

你可以重新排列请求吗?即“输入重量(千克):_” –

+0

肯定这是做到这一点的更简单的方法,但我一直很想知道是否可以在命令行中打印某些东西,可以在命令行中执行 – plusplusjava

+0

我也很好奇,所以我+1的问题,我也只是问是否有理由? –

回答

3

我们可以在一个棘手的方式使用\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不测试,但使用您的系统的控制台。

2

你可以使用回车\r光标搬迁到行的开始

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