簡體   English   中英

如何獲得程序以將每個字符打印為“字符1 :(字符),字符2 :(字符)等”?

[英]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 ,遞增顯示給用戶的字符位置編號。 這是通過串聯一個包含循環變量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 ,因為它限制了變量的范圍(請參閱: 在循環內部或外部聲明變量 )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM