用Map 来求字符串中 各个字符的个数。
让我们先用:
List 来存储字符串
。
List<String> list =new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
list.add("a");
list.add("b");
list.add("c");
之后,将list 集合里的字符串转化为数组:
Object[] objects = list.toArray();
通过遍历来 获取objects中的每一个数据
:
HashMap<Object , Integer> hashMap =new HashMap<>();
for (int i = 0; i < objects.length; i++) {
Integer value =1;
//2.如果数据重复,即key相同,那就么代表着字符的个数要+1
if( hashMap.containsKey(objects[i])){
value = hashMap.get(objects[i]);
value++;
}
//1.先往hashmap里放数据
hashMap.put( objects[i], value);
}
这里边有两个方法: containsKey() 和get()
containKey()方法表示 hashMap里是否存储 该对象,
get() 是通过取 hashMap里的key 来得到 对应的 value 。
所有就能改变value ,用来计算字符出现的次数。
最后
通过遍历 ,显示出次数
。
Set set = hashMap.entrySet();
Iterator iterator =set.iterator();
while (iterator.hasNext()){
Map.Entry next = (Map.Entry) iterator.next();
System.out.println(next.getKey()+"->"+next.getValue());
}