好,所以我目前有一个包含键码的String数组,我想检查第一个元素是否与第二个元素具有相同的规范,例如[012]与[123]具有相似的元素。我目前遍历第一个元素的长度,然后遍历第二个元素的长度,并像这样比较这两个:If(A [1] .charAt(j)== A [2] .charAt [i])c ++; c是一个计数器,显示有多少键码具有的常见元素。这是我创建的方法static boolean hasSimilarity(String[] A, int K, int i){
int c = 0;
for(int j = 0;j
for(int m = j;m
if(A[i].charAt(j) == A[i+1].charAt(m)) c++;
}
}
return c != 0;
}
这是在Main类中的执行:int max = -1;
findSimilar FS = new findSimilar();
for (int i = 0; i < sum.length -1; i++) {
boolean hasSimilar = FS.hasSimilarity(key,K,i);
if (!hasSimilar) {
int summ = sum[i] + sum[i + 1];
System.out.println(summ);
if (summ > max) {
max = summ;
}
}
}
[当我运行此命令时,出现java.lang.StringIndexOutOfBoundsException超出范围:0。我究竟做错了什么?有什么更好的方法来比较两个键码,以便发现它们之间的相似之处?