簡體   English   中英

將字符串中的第一個字符移到第二個兩個字符之后並每3個字符重復一次的循環

[英]loop that moves first character in string behind the 2nd two characters and repeats every 3 characters

public String oneTwo(String str) {
    int len = str.length();
    for (int i = 0; i * 3 < len; i++)
        if (len >= 3) {
            return str = str.substring((i * 3) + 1, (i * 3) + 3) + str.substring((i * 3), (i * 3) + 1);
        }

    return str;
}

我需要在所有情況下都可以使用的字符串,它適用於三個字符及以下的字符串。 但是它不會運行for循環,因此不適用於大於3個字符的字符串。 同樣,三個字符以下的任何內容均保持不變且未經編輯。 到目前為止,這就是我所擁有的:“至”​​-“至”,“ tca”-“貓”,“ tcagdo”-“貓”,““-””。

如果我正確理解了您的問題,那么答案應該是:-

public String oneTwo(String str) {
    int len = str.length();
    String result = "";
    for (int i = 0; i * 3 < len-2; i++)
        if (len >= 3) {
            result = result + str.substring((i * 3) + 1, (i * 3) + 3) + str.substring((i * 3), (i * 3) + 1);
        }

    return result;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM