【问题标题】:How can I compare 2 strings character by character?如何逐个字符比较 2 个字符串?
【发布时间】:2014-02-16 22:49:46
【问题描述】:

对于一个大学项目,我正在为孩子做一个拼写测试,我需要给一个小的拼写错误打 1 分。为此,如果拼写有 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 个字符,我会得到一个错误?有没有办法知道字符串中有多少个字符并且只找到这些字母的字符?

【问题讨论】:

  • 顺便说一下这是java的,不好意思忘了提

标签: java string char compare charat


【解决方案1】:

只需使用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

【讨论】:

  • 对不起,我忘了说,它是用于java的
猜你喜欢
  • 1970-01-01
  • 2019-01-14
  • 1970-01-01
  • 2019-10-29
  • 1970-01-01
  • 2012-08-02
  • 1970-01-01
  • 1970-01-01
  • 2019-11-10
相关资源
最近更新 更多