天天看點

Android字元串反轉、左移和右移

本文首發于公衆号“AntDream”,歡迎微信搜尋“AntDream”或掃描文章底部二維碼關注,和我一起每天進步一點點

反轉

反轉最簡單的就是用StringBuilder和StringBuffer的reverse方法

private String reverseString(String original) {
        StringBuilder builder = new StringBuilder();
        builder.append(original);
        return builder.reverse().toString();
    }           
左移和右移都有很多種方式來實作,這裡簡單介紹下三次反轉法來實作左移右移

右移

/**
 * 右移index位
 * @param from
 * @param index
 * @return
 */
private String rightMoveIndex(String from, int index) {
    from = reverseString(from);
    String first = from.substring(0,index);
    String second = from.substring(index);
    first = reverseString(first);
    second = reverseString(second);
    from = first + second;
    return from;
}           
Android字元串反轉、左移和右移

左移

/**
 * 左移index位
 * @param from
 * @param index
 * @return
 */
private String leftMoveIndex(String from, int index) {
    from = reverseString(from);
    String first = from.substring(0,from.length()-index-1);
    String second = from.substring(from.length() -index);
    first = reverseString(first);
    second = reverseString(second);
    from = first + second;
    return from;
}           
Android字元串反轉、左移和右移
歡迎關注我的微信公衆号,和我一起每天進步一點點!