用Java代码编写计算两个字符串的相似度,用百分比来表示相似度的结果。要求提供完整可运行的Java代码
时间: 2023-06-08 11:03:49 浏览: 72
以下是一个简单的Java代码,用于计算两个字符串的相似度并用百分比来表示相似度的结果:
```java
import java.util.*;
public class StringSimilarity {
public static void main(String[] args) {
String s1 = "hello";
String s2 = "helLO";
double similarity = calculateSimilarity(s1, s2);
System.out.println("String similarity: " + similarity + "%");
}
public static double calculateSimilarity(String s1, String s2) {
s1 = s1.toLowerCase();
s2 = s2.toLowerCase();
int maxLength = Math.max(s1.length(), s2.length());
int minLength = Math.min(s1.length(), s2.length());
int commonChars = 0;
for (int i = 0; i < minLength; i++) {
if (s1.charAt(i) == s2.charAt(i)) {
commonChars++;
}
}
double similarity = (double) commonChars / (double) maxLength * 100;
return similarity;
}
}
```
该代码将字符串转换为小写字母,并计算它们之间的共同字符数量。相似度通过共同字符数与较长字符串的比率计算得出,并将结果乘以100表示为百分比。例如,上述代码将输出 "String similarity: 83.33333333333334%”,表示两个字符串的相似度为83.33%。