首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何让我的程序将每个字符打印为"Character #1:( character ),Character #2:(character)等“?

如何让我的程序将每个字符打印为"Character #1:( character ),Character #2:(character)等“?
EN

Stack Overflow用户
提问于 2014-09-26 06:19:05
回答 3查看 60关注 0票数 1
代码语言:javascript
运行
复制
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));
  }

如何让程序打印出以"Character #(字符编号)“开头的新行中的每个字符:

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

EN

回答 3

Stack Overflow用户

发布于 2014-09-26 06:21:51

您可以将"i“打印为文本

代码语言:javascript
运行
复制
 System.out.println ("Character #" + i + ":" + string_1.charAt(i));
票数 1
EN

Stack Overflow用户

发布于 2014-09-26 06:22:06

现在,您只能在每次循环迭代中打印"Character #1:"。相反,您需要输出"Character #",然后输出(i + 1),然后输出":",最后输出string_1.charAt(i)

票数 0
EN

Stack Overflow用户

发布于 2014-09-26 06:40:08

这里有几件事需要注意。首先,您从未真正创建过一个对象来接受来自控制台的输入。在Java语言中,这项任务通常使用Scanner来执行。

代码语言:javascript
运行
复制
Scanner sc = new Scanner(System.in);

接下来,典型的Java代码约定(采用Google's guide for example)规定变量名应该是camelCase样式的,并且不应该包含下划线字符。因此,对string_1来说,更好的名称应该是input,或者类似的名称。

代码语言:javascript
运行
复制
System.out.print("Please enter a string: ");
String input = sc.nextLine(); // input from console
System.out.println("Entered string: " + input);

最后,在for-loop中,您希望随着循环的进行递增显示给用户的字符位置的数字。这是通过连接包含循环变量iString来完成的。由于循环是零索引的,并且您可能希望由人类解释输出,因此在显示输出时向索引添加一个索引将非常有用。

代码语言:javascript
运行
复制
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)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26049070

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档