2014-09-25 182 views
1
int i; 

System.out.print("Please enter a string: "); 
String string_1 = input.nextLine(); 

    System.out.println("Entered string: " + string_1); 

    for (i = 0; i < string_1.length(); i++) { 
    System.out.println ("Character #1:" + string_1.charAt(i)); 
    } 

我怎樣才能得到程序上打印出由一名新的生產線的每個字符「字符#(字符數):」如何讓我的程序打印出每個角色爲「角色#1 :(角色),角色#2 :(角色)等」?

很抱歉,如果這個問題是混亂的,我是新來的編程

+1

你非常接近。您錯過的一件重要事情是實例化用於從控制檯讀取文本的對象「輸入」,例如, '掃描儀輸入=新掃描儀(System.in);' – voidHead 2014-09-25 22:24:11

回答

1

可以打印的「i」爲文本

System.out.println ("Character #" + i + ":" + string_1.charAt(i)); 
0

現在你只打印在每次循環迭代"Character #1:"。取而代之的是,您需要輸出"Character #",然後輸入(i + 1),然後輸入":",然後輸入string_1.charAt(i)

0

這裏需要注意幾點。首先,你永遠不會創建一個對象來接受來自控制檯的輸入。在Java中,這項任務通常使用Scanner進行。

Scanner sc = new Scanner(System.in); 

下,典型的Java代碼約定(取Google's guide for example)決定了變量名應在駝峯風格,不應該包含下劃線字符。 string_1的更好的名字因此將是input,或類似的東西。

System.out.print("Please enter a string: "); 
String input = sc.nextLine(); // input from console 
System.out.println("Entered string: " + input); 

最後,在for-loop,要增加作爲循環的進展正被顯示給用戶的字符位置的數量。這是通過連接包含循環變量iString完成的。由於循環是零索引的,並且可能希望輸出被人類解釋,因此在顯示索引時將一個索引添加到索引將會很有用。

for (int i = 0; i < input.length(); i++) { 
    // build a string using `i + 1` to display character index 
    System.out.println ("Character #" + (i + 1) + ": " + input.charAt(i)); 
} 

這也是值得注意的,即宣告環定義中的循環變量int i是優選的,因爲它限制了變量的範圍(見:Declaring variables inside or outside of a loop)。