如何让我的程序打印出每个角色为"角色#1 :(角色),角色#2 :(角色)等等#34;?

时间:2014-09-25 22:19:05

标签: java loops

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));
  }

如何让程序打印出以“字符#(字符编号)为首的新行中的每个字符:”

很抱歉,如果这个问题令人困惑,我是编程新手

3 个答案:

答案 0 :(得分:1)

你可以打印&#34;我&#34;作为文本

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

答案 1 :(得分:0)

现在您只在每次循环迭代中打印"Character #1:"。而不是那样,您需要输出"Character #",然后(i + 1),然后":",然后string_1.charAt(i)

答案 2 :(得分:0)

这里要注意一些事项。首先,您实际上从未创建过接受控制台输入的对象。在Java中,此任务通常使用Scanner

执行
Scanner sc = new Scanner(System.in);

接下来,典型的Java代码约定(取Google's guide for example)规定变量名称应采用camelCase样式,并且不应包含下划线字符。因此,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中,您希望随着循环的进行,递增显示给用户的字符位置的数字。这是通过连接包含循环变量String的{​​{1}}来完成的。由于循环是零索引的,并且可能您希望输出由人类解释,因此在显示索引时将其添加到索引中会很有用。

i

值得注意的是,在循环定义中声明循环变量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)); } 是可取的,因为它限制了变量的范围(参见:Declaring variables inside or outside of a loop)。