将单词与java中相同字符串的另一行进行比较

时间:2014-04-23 08:23:02

标签: java arrays

我的文件中有两行。这些行的第一个词是相同的。我想检查第二个词是否相同。 例如,在我在代码中调用的文件中:

第一行:“A bcd acb acd sbd”
第二行:“A bcd asd asf adf”

我写了这段代码:

        while ((command = reader.readLine()) != null) {
            String[] array = amazing.split(" ");
            if (array[0].equals("A")) {

                System.out.println(amazing);
                Girl g1 = new Girl(array[1], array[2], array[3],
                        array[4], array[5], array[6]);  
            }  
         }

我想比较这两行的array[1] 我希望我能清楚地解释清楚,谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

如果您的文件中只有两行而不是尝试此...

String st="";
String str[] = new String[2];
            int i=0;
            while((st=br.readLine())!=null){
                str[i++]=st;  // keep your text file line value in some variable
            }
       //now do what do you want
            String s[] = str[0].split(" ");
            String ss[] = str[1].split(" ");
            if(s.length<ss.length){
                for(int j=0;j<s.length;j++){
                    if(s[j].equals(ss[j])){
                        System.out.println("Equals word no."+(j+1));// its give you which word is same in both line
                    }
                }
            }else{
                for(int j=0;j<s.length;j++){
                    if(s[j].equals(ss[j])){
                        System.out.println("Equals word no."+s[j]);
                    }
                }
            }

<强>输出

Equals word is.A
Equals word is.bcd

答案 1 :(得分:0)

这可以帮助你:

String line1,line2;
String[] ar_line1,ar_line2;
while ((line1 = reader.readLine()) != null && (line2 = reader.readLine()) != null)
{
    ar_line1 = line1.split(" ");
    ar_line2 = line2.split(" ");

    for(int i=0;i<ar_line1.length;i++){
        if(ar_line1[i].equals(ar_line2[i])) {
                continue;
            }
            else{
                  System.out.println("Word are different at index : "+i);  
                  break;
            }
    }
}  

这里我假设两个留言都包含相同数量的单词。如果你想比较忽略情况而不是使用ar_line1[i]..equalsIgnoreCase(ar_line2[i])

1我在while循环开始时读了两行 2将两条线与空间分开 3逐一比较所有单词 4如果单词等于继续下一个单词,如果不是打印消息和中断循环