题目:一组任意字符串 并且其中可能含有重复字符 算出每个字母的重复次数 并输出字母和其对应的重复次数
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class test {
public static void main(String[] args) {
String a = "sadsadadadasdadasd";
int changdu=a.length();
char shuzu[] = a.toCharArray();
Map map=new HashMap();
// 运用双循环筛选出前面与自身没有重复的字符
for (int i = 0; i < shuzu.length; i++) {
for(int i1=0;i<i;i1++){
if (shuzu[i]==shuzu[i1]){
break;
}
}
test test1=new test();
// 跳转至methed方法中
int h=test1.methed(shuzu[i],shuzu);
// 将字符和对应的次数存入集合map中
map.put(shuzu[i],h);
}
// 遍历集合map
Set entrySet=map.entrySet();
Iterator iterator1 = entrySet.iterator();
while(iterator1.hasNext()){
System.out.println(iterator1.next());
}
}
// methed主要方法为算出传入字符的重复次数
public int methed(char zifu, char shuzu[]){
int b=0;
for(int i=0;i<shuzu.length;i++){
if (shuzu[i]==zifu){
b++;
}
}
return b;
}
}
结果:
结果正确
思路: 先将字符串变为数组的形式 , 在main函数中进行筛选 筛选出前面没有与本身相同的字符, 然后传入methed类中计算重复次数 ,最后返回重复次数 存入集合map中 输出。