java - Java 中的字符串字反转给出错误的结果?

标签 java string reverse

这是我的代码,用于在不使用任何 API 的情况下在 Java 中打印字符串字符。但它不能正常工作。谁能帮我更正一下?

public static void main(String args[]) {
    String input = "I am test";
    String result = "";
    for (int i = input.length() - 1; i > 0; i--) {
        Character c = input.charAt(i);
        if (c != ' ') {
            result = c + result;
        } else {
            System.out.println(result + " ");
        }
    }
}

它给出输出“test amtest”,而输出应该是“test am I”。

请帮助我在不使用预定义方法或 API 的情况下获得准确的输出。

最佳答案

你的实现有四个问题:

  • 你不会一直下​​降到零,
  • 在循环中的每个打印输出后放置一个行尾,
  • 循环结束后不打印“tail”结果,并且
  • 在循环中打印 result 后,您没有清除它。

解决这些问题将为您提供正确的输出 ( demo)。

关于java - Java 中的字符串字反转给出错误的结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30067319/

相关文章:

java - 调用 Java 关键字 super

java - Java 中的 XML 到 XML 的转换

c - 反向字符串程序中的空字符是什么?

在C中以相反的顺序将链表的元素复制到另一个链表

python 分割和反转文本文件

java - 当我尝试使用 Canvas 显示背景图像时出现问题

java - 如何从 CLI 使用 apispark

java - 如何在 Java 中将文件保存为字符串数组?

python - 在 python 中制作字符串值的直方图

c - 读取字符串中的数字序列