0

给出一个基本类型为 String 的二维数组 T 和一些字符串 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++;
                }
            }
        }
    }
}

问题是我的代码的第一部分被忽略了(即使应该满足条件)。我将不胜感激并提出解决此问题的建议。

4

2 回答 2

6

您不能使用 == 进行字符串比较。尝试:

if(T[k][2].equals(str.substring(indeksck+1))) {
于 2012-12-29T14:28:36.290 回答
2

==Java中的运算符用于参考比较。要检查对象的等价性(字符串也是如此),您需要使用equals()方法。

于 2012-12-29T14:32:20.397 回答