[英]How can I get my program to print out each character as “Character #1: (character) , Character #2: (character), etc”?
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));
}
如何獲取程序以在以“字符#(字符編號):”開頭的新行上打印出每個字符
抱歉,這個問題令人困惑,我是編程新手
您可以將“ i”打印為文本
System.out.println ("Character #" + i + ":" + string_1.charAt(i));
現在,您在每次循環迭代中僅打印"Character #1:"
。 取而代之的是,您需要輸出"Character #"
,然后是(i + 1)
,然后是":"
,然后是string_1.charAt(i)
。
這里要注意幾件事。 首先,您永遠不會真正創建一個對象來接受來自控制台的輸入。 在Java中,通常使用Scanner
來執行此任務。
Scanner sc = new Scanner(System.in);
接下來,典型的Java代碼約定(以Google指南為例 )規定變量名稱應采用camelCase樣式,並且不應包含下划線字符。 因此,將input
string_1
的更好名稱,或類似的名稱。
System.out.print("Please enter a string: ");
String input = sc.nextLine(); // input from console
System.out.println("Entered string: " + input);
最后,在for-loop
,您希望隨着for-loop
,遞增顯示給用戶的字符位置編號。 這是通過串聯一個包含循環變量i
的String
來完成的。 由於循環是零索引的,並且大概您希望人類對輸出進行解釋,因此在顯示索引時將其添加到索引會很有用。
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
,因為它限制了變量的范圍(請參閱: 在循環內部或外部聲明變量 )。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.