2015-06-14 145 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: ", " ");