题目:给定两个字符串A和B。A的旋转操作就是将A 最左边的字符移动到最右边,判断A是否能变成B
public class test2 {
public static void main(String[] args) {
//建立两个字符串
String str1="abcdef";
String str2="defabc";
boolean result = compelet(str1, str2);
System.out.println(result);
}
//A能变成B,那么返回True。如果不能匹配成功,则返回false。
public static boolean compelet(String str1 ,String str2){
for (int i = 0; i < str1.length(); i++) {
str1 = rechange(str1);
if (str1.equals(str2)) {
return true;
}
}
//所有结果都比完,任不满足需求。
return false;
}
//A的旋转操作就是将A 最左边的字符移动到最右边。
//方法一:用substring截取字符串;
public static String rechange(String str){
char c = str.charAt(0);
String end = str.substring(1);
return end+c;
}
//方法二:把字符串变成字符数组,进行转换;
public static String rechange(String str){
char[] arr = str.toCharArray();
char first=arr[0];
for (int i = 1; i < arr.length; i++) {
arr[i-1]=arr[i];
}
arr[arr.length-1]=first;
String result=new String(arr);
return result;
}
}
方法补充:
套路:
如果我们看到要修改字符串的内容
可以有两个办法:
1.用substring字符串进行截取;
2.可以把字符串先变成一个字符数组,然后调整字符数组里面数据,最后再把字符数组变成字符串;
标签:字符,arr,Java,String,str1,旋转,str,简单,字符串 From: https://www.cnblogs.com/ltl-1208/p/18117628