小练习-旋转字符

给定两个字符串,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();
    }
}
相关推荐
一晌小贪欢2 小时前
【Python数据分析】数据分析与可视化
开发语言·python·数据分析·数据可视化·数据清洗
沐浴露z2 小时前
【微服务】基本概念介绍
java·微服务
Z3r4y3 小时前
【代码审计】RuoYi-4.7.3&4.7.8 定时任务RCE 漏洞分析
java·web安全·ruoyi·代码审计
草莓火锅4 小时前
用c++使输入的数字各个位上数字反转得到一个新数
开发语言·c++·算法
j_xxx404_4 小时前
C++ STL:阅读list源码|list类模拟|优化构造|优化const迭代器|优化迭代器模板|附源码
开发语言·c++
DreamNotOver4 小时前
批量转换论文正文引用为上标
开发语言·论文上标
散峰而望4 小时前
C/C++输入输出初级(一) (算法竞赛)
c语言·开发语言·c++·算法·github
Kuo-Teng4 小时前
LeetCode 160: Intersection of Two Linked Lists
java·算法·leetcode·职场和发展
Jooou4 小时前
Spring事务实现原理深度解析:从源码到架构全面剖析
java·spring·架构·事务