JAVA字符串反轉

前言

有一些面試官可能在面試Java基礎的時候,讓你說一下字符串反轉,會手撕代碼,常見的是四種方法。

一、使用StringBuilder的reverse()方法

個人覺得這是最簡單的一種,調用一下自身的方法就可以完成了。

static String reverseElement1(String element){
    StringBuilder result = new StringBuilder(element);
    return result.reverse().toString();
}

二、使用字符串數組

使用字符串數組,實現從尾部開始逐個逆序放入字符串,這樣也可以實現字符串的反轉。

static String reverseElement2(String element){
    //String轉換成字符數組
    char[] charArray = element.toCharArray();
    //定義一個空字符串
    StringBuilder result = new StringBuilder();
    for (int i = charArray.length - 1; i >= 0; i--){
        result.append(charArray[i]);
    }
    return result.toString();
}

三、使用String的CharAt方法

使用String的CharAt方法取出字符串中的各個字符,然後插入到字符串中。調用StringBuilder的insert()方法進行操作。

static String reverseElement3(String element) {
    StringBuilder result = new StringBuilder();
    int length = element.length();
    for (int i = 0; i < length; i++) {
        result.insert(0, element.charAt(i));
    }
    return result.toString();
}

四、使用String的CharAt方法

使用遞歸的方式實現字符串反轉。

static String reverseElement4(String element) {
        //首先判斷一下字符串是不是爲空和其長度
        if (element == null || element.length() <= 1) {
            return element;
        } else {
            return reverseElement4(element.substring(1)) + element.charAt(0);
        }
}

五、Demo地址

GitHub地址:https://github.com/i-kang/ReverseElement

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章