小练习-旋转字符

给定两个字符串,A和B

A的旋转操作就是将A最左边的字符移动到最右边

例如abcde移动一次结果就是bcdea

经过若干次调整后,如果A能变成B,那么返回true

不能匹配成功,则返回false

java 复制代码
package example;

public class demo05 {
    public static void main(String[] args) {
        String strA = "abcde";
        String strB = "abdec";

        //旋转字符串
        int i;
        for (i = 0; i < strA.length(); i++) {
            strA = rotateStr(strA);
            if (strA.equals(strB)) {
                System.out.println("匹配成功");
                break;
            }
        }
        if (i == strA.length()) {
            System.out.println("匹配失败");
        }
    }

    public static String rotateStr(String str) {
        StringBuilder newStr = new StringBuilder(str.length());
        for (int i = 1; i < str.length(); i++) {
            newStr.append(str.charAt(i));
        }
        newStr.append(str.charAt(0));
        return newStr.toString();
    }
}
相关推荐
夕除12 小时前
shizhan--10
java·开发语言
Zhang~Ling12 小时前
C++ 红黑树封装:myset和mymap的底层实现
开发语言·数据结构·c++·算法
原来是猿12 小时前
为什么 C++ 需要区分左值和右值?
开发语言·c++
吴声子夜歌12 小时前
JVM——并发容器实现原理
java·jvm·并发容器
xier_ran12 小时前
【infra之路】PagedAttention
java·开发语言
糖果店的幽灵12 小时前
Spring AI 从入门到精通-结构化输出
java·人工智能·spring
SilentSamsara12 小时前
NumPy 进阶:广播机制、ufunc 与向量化计算的工程实践
开发语言·python·青少年编程·性能优化·numpy
zzz_236812 小时前
【Spring】面试突击系列(六):Spring 工程实践与面试综合
java·spring·面试
珊瑚里的鱼12 小时前
C++的强制类型转换
android·开发语言·c++
编程探索者小陈12 小时前
接口自动化三件套:JSON Schema 校验 + logging 日志 + Allure 测试报告
开发语言·python