gpt4 book ai didi

java - 计算字符串中的字母 Java

转载 作者:行者123 更新时间:2023-11-29 09:37:50 25 4
gpt4 key购买 nike

我正在做一个作业,我必须编写一个程序来从用户那里读取一个字符串,并打印出字符串中的字母和出现次数。 例如“Hello world”里面应该打印出“h=1 e=1 l=3 o=2 ... etc”,但是我的只写了“hello world”和字母总数。我不能使用 hashmap 函数,只能使用数组。有人可以给我一两个提示,说明如何从下面的书面代码开始获得我喜欢的功能吗?我不明白如何将书面输入保存在数组中。

到目前为止,这是我的代码。

public class CountLetters {
public static void main( String[] args ) {
String input = JOptionPane.showInputDialog("Write a sentence." );
int amount = 0;
String output = "Amount of letters:\n";

for ( int i = 0; i < input.length(); i++ ) {
char letter = input.charAt(i);
amount++;
output = input;
}
output += "\n" + amount;
JOptionPane.showMessageDialog( null, output,
"Letters", JOptionPane.PLAIN_MESSAGE );
}
}

最佳答案

您不需要 26 个 switch 案例。只需使用简单的代码来计算字母:

    String input = userInput.toLowerCase();// Make your input toLowerCase.
int[] alphabetArray = new int[26];
for ( int i = 0; i < input.length(); i++ ) {
char ch= input.charAt(i);
int value = (int) ch;
if (value >= 97 && value <= 122){
alphabetArray[ch-'a']++;
}
}

完成计数操作后,将结果显示为:

 for (int i = 0; i < alphabetArray.length; i++) {
if(alphabetArray[i]>0){
char ch = (char) (i+97);
System.out.println(ch +" : "+alphabetArray[i]); //Show the result.
}
}

关于java - 计算字符串中的字母 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19163876/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com