字符串索引两个字符串之间的差异

Bla*_*ite 3 java string compare

我有两个字符串列表,如下所示:

List1(由sql结果集生成)

10001
10100
10001
Run Code Online (Sandbox Code Playgroud)

List2(由sql结果集生成)

10000
10000
10000
Run Code Online (Sandbox Code Playgroud)

按钮动作;

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        try {
            // TODO add your handling code here:
            createList1();
            createList2();
            difference();
        } catch (Exception ex) {
            Logger.getLogger(GUI.class.getName()).log(Level.SEVERE, null, ex);
        }       
    }    
Run Code Online (Sandbox Code Playgroud)

差异无效;

public void difference (){
       int minLen = Math.min(List1.get(0).length(), List2.get(0).length());
        for (int i = -1 ; i != minLen ; i++) {
          char chA = List1.get(0).charAt(i);
          char chB = List2.get(0).charAt(i);
        if (chA != chB) {
        System.out.println(chA);
        }
       }  
    }
Run Code Online (Sandbox Code Playgroud)

我想找到List1中索引0的哪些索引号不同.

提前致谢.

das*_*ght 5

创建一个循环,将索引i从两个字符串中较短字符串的长度的零开始迭代,并使用==运算符逐个比较字符:

int minLen = Math.min(a.length(), b.length());
for (int i = 0 ; i != minLen ; i++) {
    char chA = a.charAt(i);
    char chB = b.charAt(i);
    if (chA != chB) {
        ...
    }
}
Run Code Online (Sandbox Code Playgroud)

在开始比较之前,您需要检查ab不是null.否则,获取长度将触发空引用异常.