ArrayList嵌套HashMap:
public class ArrayListIncludeHashMapDemo {
public static void main(String[] args) {
//创建ArrayList集合
ArrayList<HashMap<String,String>> array = new ArrayList<>();
//创建HashMap集合,并添加键值对元素
HashMap<String,String> hm1 = new HashMap<>();
hm1.put("孙策","大乔");
hm1.put("周瑜","小乔");
//添加到ArrayList集合中
array.add(hm1);
//创建HashMap集合,并添加键值对元素
HashMap<String,String> hm2 = new HashMap<>();
hm1.put("郭靖","黄蓉");
hm1.put("杨过","小龙女");
//添加到ArrayList集合中
array.add(hm2);
//创建HashMap集合,并添加键值对元素
HashMap<String,String> hm3 = new HashMap<>();
hm1.put("令狐冲","任盈盈");
hm1.put("林平之","岳灵珊");
//添加到ArrayList集合中
array.add(hm3);
//遍历ArrayList集合
for(HashMap<String,String> hm : array){
Set<String> key = hm.keySet();
for(String k : key){
String s = hm.get(k);
System.out.println(k + "," + s);
}
}
}
}
运行结果:
HashMap嵌套ArrayList:
public class HashMapIncludeArrayListDemo {
public static void main(String[] args) {
//创建HashMap集合
HashMap<String, ArrayList<String>> hm = new HashMap<>();
//创建ArrayList集合,并添加元素
ArrayList<String> array1 = new ArrayList<>();
array1.add("诸葛亮");
array1.add("赵云");
//把ArrayList作为元素添加到Hamap集合
hm.put("三国",array1);
//创建ArrayList集合,并添加元素
ArrayList<String> array2 = new ArrayList<>();
array2.add("唐增");
array2.add("孙悟空");
//把ArrayList作为元素添加到Hamap集合
hm.put("西游记",array2);
//创建ArrayList集合,并添加元素
ArrayList<String> array3 = new ArrayList<>();
array3.add("武松");
array3.add("宋江");
//把ArrayList作为元素添加到Hamap集合
hm.put("水浒传",array3);
//遍历HashMap集合
Set<String> keySet = hm.keySet();
for(String key : keySet){
System.out.println(key);
ArrayList<String> value = hm.get(key);
for(String s : value){
System.out.println("\t" + s);
}
}
}
}
运行结果:
键盘录入一个字符串,要求统计字符串中每个字符串出现的次数
public class HashMapTest {
public static void main(String[] args) {
//键盘录入一个字符串
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串");
String line = sc.nextLine();
//创建HashMap集合,键是Character,值是Integer
TreeMap<Character,Integer> hm = new TreeMap<>();
//遍历字符串,得到每一个字符
for (int i = 0; i < line.length(); i++) {
char key = line.charAt(i);
//拿得到的每一个字符作为键到HashMap集合中去找对应的值,看其返回值
Integer value = hm.get(key);
if(value == null){
//如果返回值是null:说明该字符在HashMap集合中不存在,就把该字符作为键,1 作为值存储
hm.put(key,1);
}else{
//如果返回值不是null:说明该字符在HashMap集合中存在,把该值加1,然后重新 存储该字符和对应的值
value++;
hm.put(key,value);
}
}
//遍历HashMap集合,得到键和值,按照要求进行拼接
StringBuilder sb = new StringBuilder();
Set<Character> keySet = hm.keySet();
for (Character key : keySet) {
Integer value = hm.get(key);
sb.append(key).append("(").append(value).append(")");
}
String result = sb.toString();
System.out.println(result);
}
}
运行结果: