import java.util.concurrent.CountDownLatch;
public class StringDemo10 {
public static void main(String[] args) {
/*
给定两个字符串A和B
每旋转一次 A最左侧的字符串移动到最右测 直到A=B
例如:A=abcde 旋转一次后 A=bcdea
A能变为B 则返回true 反之 返回false
*/
String str1 = "abcde";
String str2 = "abcde";
String rotate = rotate(str1);
System.out.println(check(str1,str2));
}
//作用:旋转字符串,把左侧的字符串移动到右侧去
//形参:旋转前的字符串
//返回值:旋转后的字符串
public static String rotate(String str){ //str = abcde
char first = str.charAt(0); //first = a
String end = str.substring(1); //end = bcde
return end +first; //bcdea
}
//作用:比较字符串是否相等
//形参:需要比较的两个字符串
//返回值:布尔值
public static boolean check(String str1, String str2){
for (int i = 0; i < str1.length(); i++) {
str1 = rotate(str1);
if(str1.equals(str2)){
return true;
}
}
//所有的情况都比较完毕,还不一样,就返回假
return false;
}
}
A=abcde B=abcde
A=abcde B=De