首页 > 解决方案 > 如何将 StringBuffer 的最后一个字符转移到开头?

问题描述

我正在尝试使用 StringBuffer.insert() 将 StringBuffer 的最后一个字符转移到开头。即使我事先不知道这个词,我也希望能够做到这一点。

我尝试使用下面的 insert() 和 length() 方法传输字母,但没有成功。

    StringBuffer str3 = new StringBuffer("Colour");
    System.out.println(str3.insert(0,str3.length()));

    // output is "6Colour"

标签: javastringstringbuffer

解决方案


您的代码的问题是您使用的是字符串的长度。

试试下面的代码:

String str = "Colour"; // Some user String

StringBuffer str3 = new StringBuffer(str);

char lastChar = str3.charAt(str3.length()- 1); // Get The last Character

str3 = str3.insert(0, lastChar); // Insert last char to firs index

str3 = str3.deleteCharAt(str3.length - 1); // Delete the last char

System.out.println(str3); // Print the string

推荐阅读