这道题目实际上是要实现判断字符串是否是由重复字符串单元组成,主要的做法有:
重复单元的长度要少于字符长度的一半,并且是字符串长度的一个约数。因此可以遍历一般长度到1的子字符串并且进行重复,最终判断和原字符串是否相等。最后附上代码:
public static boolean repeatedSubstringPattern(String s) {
int l=s.length();
for (int i = l/2; i >=1; i--) {
if (l%i==0) {
StringBuffer sb=new StringBuffer();
String temp=s.substring(0,i);
for (int j = 0; j < l/i; j++) {
sb.append(temp);
}
if (sb.toString().equals(s)) {
return true;
}
}
}
return false;
}