给出一个二维数组T,基本类型为String,一些字符串为str(可以像String类型一样处理)我想检查T是否包含某些部分str作为其条目。我试过这个:
int indeksck = str.indexOf("C");
while(k<T.length){
if(T[k][2] == str.substring(indeksck+1)){
if(T[k][1] == str.substring(6, indeksck)){
int ile_o = Integer.parseInt(T[k][0]);
T[k][0]= Integer.toString(ile_o+1);
T[k][3] = T[k][3]+"X"+str.substring(1,6);
k = T.length+1;
} else {
k++;
}
} else {
k++;
if(k==T.length){
k = 0;
while(k<T.length){
if(T[k][0]==null){
T[k][0] = Integer.toString(1);
T[k][1] = str.substring(6,indeksck);
T[k][2] = str.substring(indeksck+1);
T[k][3] = str.substring(1,6);
k = T.length+1;
} else {
k++;
}
}
}
}
}
问题是我的代码的第一部分被忽略了(即使应该满足条件)。我很感激和建议解决这个问题。
答案 0 :(得分:6)
您不能使用==进行字符串比较。尝试:
if(T[k][2].equals(str.substring(indeksck+1))) {
答案 1 :(得分:2)
==
运算符用于参考比较。要检查对象的等效性(对于字符串也是如此),您需要使用equals()
方法。