【发布时间】:2023-02-24 02:49:57
【问题描述】:
无论大小写如何,我如何计算给定字符串中的字母?例如。 “夏威夷”-> h=2,a=2,w=1,i=2。
我试着做一个 for 循环,但它把大写字母分开计算。
【问题讨论】:
标签: java string count capitalization
无论大小写如何,我如何计算给定字符串中的字母?例如。 “夏威夷”-> h=2,a=2,w=1,i=2。
我试着做一个 for 循环,但它把大写字母分开计算。
【问题讨论】:
标签: java string count capitalization
在循环之前使用String#toLowerCase将整个String转换为小写,或者在迭代String时使用Character.toLowerCase转换每个字符。
String str = "Hawaiih";
Map<Character, Integer> freq = new HashMap<>();
for (int i = 0; i < str.length(); i++)
freq.merge(Character.toLowerCase(str.charAt(i)), 1, Integer::sum);
System.out.println(freq); // {a=2, w=1, h=2, i=2}
【讨论】: