java - 返回 for 语句打印的值

标签 java

我想返回所有信息作为 for 语句打印的输出。

例如:

public static int countNumbers(int x) {

    for (int i = 1; i <= x; i++) {
        System.out.println(i);
    }

    return SOMETHING; // This something should be the values for statements prints.
                      // For example, countNumbers(5) returns 12345.
}

所以当我在其他地方调用该方法时,我会得到输出。

所以:

int output = countNumbers(3);
//output = 123;

如何做到这一点?

最佳答案

使用StringBuilder来累积结果。 更新:然后使用Integer.parseInt将其转换为int:

public static int countNumbers(int i) {
    StringBuilder buf = new StringBuilder();

    for (int i=1; i<=5; i++) {
      buf.append(i);
    }
    return Integer.parseInt(buf.toString());
}

请注意,这仅适用于相当小的 i 值(最多 9),否则您将遇到整数溢出。

关于java - 返回 for 语句打印的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4904090/

相关文章:

java - Repaint() 不重新绘制图像

java - 将镜像快速启动 Java 项目上传到 App Engine :

java - 解析 thymeleaf 文本模板中的特殊字符

java - 转义序列无效(有效的是\b\t\n\f\r\"\'\\)

java - 为什么父线程没有在子线程之后执行?

java - 每个 android 的 ConcurrentModificationException

java - 尽管已经安装了合适的 eclipse 尚未启动

java - @BeforeClass 注释在动态创建的测试套件中不起作用

javascript - Selenium WebDriver - 断言褪色消息

java - 如何在 Spring Security 中的子域之间共享 session