【发布时间】:2022-11-13 17:27:32
【问题描述】:
输入:一串字符。所有字母都将大写。字符串变量将在程序开始时定义。
字符串句子=“在一个直角三角形中,斜边的平方等于腿的平方和”;
输出:回答以下关于字符串的问题:
最常见的字母是什么?
它发生多少次?
如下格式化您的输出:
字符串中出现频率最高的字母是:X
(其中“X”代表出现频率最高的字母,N 代表出现的次数)
最常见的字母是 X,它在字符串中出现 N 次。
(其中 N 表示出现频率最高的字母的次数)
我并不真正关心格式,因为我想知道如何编码。我正在学习 Java 的原理,所以我处于初学者水平,因此我不能使用 char 方法,因为我还没有学习它。需要嵌套 for 循环。这是我编写的不完整代码:
类主{
公共静态无效主要(字符串[]参数){
String sentence = "IN A RIGHT TRIANGLE THE SQUARE OF THE HYPOTENUSE EQUALS THE SUM OF THE SQUARES OF THE LEGS";
// write your code here
String letter = ltr;
int count = 0;
for (int i = 0; i < sentence.length(); i++) {
String ltr = sentence.substring(i, i + 1);
if (!(ltr.equals(" "))) {
for (int j = 0; j < sentence.length(); j++) {
String ltr2 = sentence.substring(j, j + 1);
if (ltr.equals(ltr2)) {
count += 1;
}
if (count ) {
}
System.out.println((i) + " " + ltr + " " + (j) + " " + ltr2);
}
}
}
System.out.println(count);
}//主要结束
}//课程结束
【问题讨论】:
-
我认为您需要记住哪个字母出现了多少次,而不是连续出现了多少次。为此使用
Map<Character,Integer>。 -
@f1sh 我在学校没有学过,所以我认为我不能使用它。我无法在变量中保存它发生的次数,而且我不知道如何将它与下一个字母进行比较