如何逐个字符地比较2个字符串?

时间:2014-02-16 22:49:46

标签: java string char compare charat

对于一个大学项目,我正在为孩子们做拼写测试,我需要给出一个小的拼写错误标记。为此,如果拼写有2个字符错误,我将会这样做。如何将保存的单词与输入的单词进行比较?

char wLetter1 = word1.charAt(0);
char iLetter1 = input1.charAt(0);


char wLetter2 = word1.charAt(1);
char iLetter2 = input1.charAt(1);

我已经开始使用word1是保存的单词,input1是用户输入的单词。 但是,如果我添加了很多这些,如果单词长度为3个字符,但我想比较第4个字符,我会收到错误吗?有没有办法知道字符串中有多少个字符,只找到这些字母的字符?

1 个答案:

答案 0 :(得分:0)

只需使用for循环即可。 由于我假设这是关于JavaScript的,因此使用索引越界调用charAt()将只返回空字符串""

为了避免越界异常,你必须迭代直到长度越低:

int errs = Math.abs(word1.length - input1.length);
int len = Math.min(word1.length, input1.length);
for (int i = 0; i < len; i++) {
    if (word1.charAt(i) != input1.charAt(i)) errs++;
}
// errs now holds the number of character mismatches