[英]Counting differences in 2 strings which have the same length
假设我有两个字符长度相同的字符串。 他们看起来像这样。
String s1 = "R20k20r20";
String s2 = "R21k20r20";
我真的不在乎差异在哪里,但我希望能够计算出它们之间有多少差异。 在这种情况下,它应该只是 1。在这种情况下,完成此操作的最简单方法是什么?
您可以迭代到字符串的长度并为每个不同的字符增加一个计数器:
int numDiffs = 0;
for (int i = 0; i < s1.length(); ++i) {
if (s1.charAt(i) != s2.charAt(i)) {
++numDiffs;
}
}
或者你可以 stream 这个长度可以说是更优雅的单行:
long numDiffs =
IntStream.range(0, s1.length()).filter(i -> s1.charAt(i) != s2.charAt(i)).count();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.