自定义字符串反向Java

时间:2012-03-01 08:16:26

标签: java android string reverse

我想问一下,有没有办法可以自定义你在java中反转字符串的方式?例如,这是我的示例输入:

大蓝鸟在飞翔。

有什么方法可以反转字符串的某些部分,例如3?

所以输出结果为:

Theib g beul bi dris ylfing。

字符串每3个字符后反转。这有可能吗?

1 个答案:

答案 0 :(得分:2)

方法论:通过参数迭代输入字符串的所有字符(例如,在您的情况下,参数= 3)借助布尔标志确定要反转的部分。如果不反转部分子字符串,则将其附加到结果中,否则在StringBuilder对象的帮助下将其反向附加到结果。试试这段代码,我希望它有所帮助:

public static String customizedReverse(String str, int param)
{
    String result = "";
    boolean reverse = false;
    StringBuilder sb = null;
    int size = str.length(), i = 0;

    if(param > size)
        return str;

    for (i = 0; i < (size/param)*(param); i += param)
    {
        String temp = str.substring(i, i + param);
        if (!reverse)
            result += temp;
        else
        {
            sb = new StringBuilder(temp);
            result += sb.reverse();
        }
        reverse = !reverse;
    }
    // Appending the remaining part of the string       
    if (!reverse)
        result += str.substring(i, size);
    else
    {
        sb = new StringBuilder(str.substring(i, size));
        result += sb.reverse();
    }

    return result;
}