问题描述
- java 计算输入英文句子中出现过的字母的次数
-
不区分大小写,大写字母一律先变换成小写字母再计算
例
输入
This is a pen.输出
a : 1
b : 0
c : 0
d : 0
e : 1
f : 0
g : 0
h : 1
i : 2
j : 0
k : 0
l : 0
m : 0
n : 1
o : 0
p : 1
q : 0
r : 0
s : 2
t : 1
u : 0
v : 0
w : 0
x : 0
y : 0
z : 0使用一下代码雏形
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc= new Scanner(System.in); int[] chars = new int[256]; while(sc.hasNextLine()) { String line = sc.nextLine(); for (int i= 0; i< line.length(); i++) { char ch= Character.toLowerCase(line.charAt(i)); // … 随着ch的出现更新结构体… } } for(charch= 'a'; ch<= 'z'; ch++) { System.out.println(ch+ " : " + chars[ch]); } } }
应该只需要写注释部分的代码
编程弱鸡,求大神指导
解决方案
到底是单词的次数,还是字母的次数。
解决方案二:
单词的次数,用你这个“雏形”不行的,因为字母只有a-z,单词有很多,不能预先知道分类,你需要用hashmap。
具体代码
http://blog.csdn.net/sz_bdqn/article/details/23218983
解决方案三:
java 在一段英文文本中计算每个单词出现的次数
Akka学习笔记03--计算多个句子中每个单词出现的次数
Akka学习笔记03--计算多个句子中每个单词出现的次数
解决方案四:
是不是写错了,该统计字母出现的次数
解决方案五:
你这是统计字母的个数吧
解决方案六:
统计字母次数的话可以用数组,长度为26,下标0代表a,以此类推,每次取出单个字母,每出现一次就在对应的数组位置的数字+1放回,如果是单词统计就
使用hashmap,单词作为key,次数作为value,每次拿到单词遍历hashmap,若有,相关值加1,否则新加一组key-value
时间: 2024-12-31 22:04:37