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));
}
如何让程序打印出以“字符#(字符编号)为首的新行中的每个字符:”
很抱歉,如果这个问题令人困惑,我是编程新手
答案 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)。