方法一:
class Solution {
public boolean arrayStringsAreEqual(String[] word1, String[] word2) {
StringBuilder sb = new StringBuilder();
for(int i = 0; i < word1.length; i++) {
sb.append(word1[i]);
}
int count = sb.length();
int idx = 0;
for(int i = 0; i < word2.length; i++) {
int n = word2[i].length();
// word2的字符串总长度比word1长
if(idx + n > count) return false;
if(!word2[i].equals(sb.substring(idx, idx + n))) return false;
idx = idx + n;
}
// word1的字符串总长度比word2长
if(idx != count) return false;
return true;
}
}
方法二:
class Solution {
public boolean arrayStringsAreEqual(String[] word1, String[] word2) {
return join(word1).equals(join(word2));
}
public String join(String[] word) {
StringBuilder sb = new StringBuilder();
for(String s : word) {
sb.append(s);
}
return sb.toString();
}
}