package map.demo;
import java.util.*;
public class HashMapDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
HashMap ha = new HashMap<>();
System.out.println("请输入学生的姓名,年龄,籍贯!");
System.out.println("例如:'张三 37 黑龙江' ,以空格作为分隔符,以over结束");
while (true){
String student = sc.nextLine();
String [] studentInfo = student.split(" +");
if (student.equalsIgnoreCase("over")){
keySet(ha);
break;
}
else{
ha.put(new Student(studentInfo[0],Integer.parseInt(studentInfo[1])),studentInfo[2]);
}
}
}
public static void keySet(HashMap mp){
Set s = mp.keySet();
Iterator it = s.iterator();
while (it.hasNext()){
Student key = it.next();
String value = mp.get(key);
System.out.println(key+ " "+ value);
}
}
}
package map.demo;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class Mapdemo {
public static void main(String[] args) {
method_4();
}
public static void method_4(){
Map m = new HashMap<>();
m.put("a",21);
m.put("b",43);
m.put("c",90);
Set> st = m.entrySet();
Iterator > it = st.iterator();
while (it.hasNext()){
Map.Entry mp = it.next();
String key = mp.getKey();
Integer value = mp.getValue();
System.out.println("key:"+key+" "+"value:"+value);
}
}
public static void method_3(){
Map m = new HashMap<>();
m.put("a",21);
m.put("b",43);
m.put("c",90);
Set s = m.keySet();
Iterator it = s.iterator();
while (it.hasNext()){
String key = it.next();
Integer value = m.get(key);
System.out.println("key:"+key+" "+"value:"+value);
}
}
public static void method_2(){
Map ht = new HashMap<>();
Integer a = ht.put("a",1);
Integer b = ht.put("b",2);
Integer c = ht.put("c",3);
Integer d = ht.put("d",4);
Integer i = ht.get("c");
//判断当前键中是否有某键
boolean a1 = ht.containsKey("a");
//判断值中是否包含某值
boolean b1 = ht.containsValue(3);
System.out.println(a1+" "+b1);
}
public static void method(){
//Map接口对实现类HashMap
Map h = new HashMap<>();
//键值对存储到集合的方法,-->put
Integer a = h.put("a",1);
System.out.println(a);
System.out.println(h);
//获取键对应的值
}
public static void method_1(){
Map ht = new HashMap<>();
Integer a = ht.put("a",1);
Integer b = ht.put("b",2);
Integer c = ht.put("c",3);
Integer d = ht.put("d",4);
Integer i = ht.get("c");
System.out.println("ht:"+ht);
System.out.println(i);
}
}
package map.demo;
import java.util.TreeMap;
public class Maptest {
public static void main(String[] args) {
String str = "aababcadasda";
method_1(str);
}
public static void method_1(String str){
char[] strArr = str.toCharArray();
TreeMap strArr_treeMap = new TreeMap<>();
for(char c : strArr){
Integer i = strArr_treeMap.get(c);
if (i==null){
strArr_treeMap.put(c,1);
}
else{
strArr_treeMap.put(c,i+1);
}
}
System.out.println(strArr_treeMap);
}
}
package map.demo;
import javafx.beans.binding.Mapexpression;
import java.util.*;
public class MapTest2 {
public static void main(String[] args) {
HashMap> chuanshi = new HashMap<>();
HashMap classOne = new HashMap<>();
HashMap classTwo = new HashMap<>();
chuanshi.put("功能测试班",classOne);
chuanshi.put("性能测试班",classTwo);
classOne.put("001","张三");
classOne.put("002","李四");
classTwo.put("003","王二");
classTwo.put("004","麻子");
Map_Entry(chuanshi);
}
public static void keySet(HashMap> className){
Set classname = className.keySet();
Iterator< String> it = classname.iterator();
while (it.hasNext()){
String class_id = it.next();
HashMap class_student_number = className.get(class_id);
Set class_number = class_student_number.keySet();
Iterator it_1 = class_number.iterator();
while (it_1.hasNext()){
String student_id = it_1.next();
String student_name = class_student_number.get(student_id);
System.out.println("Class:"+class_id+" "+"id:"+ student_id+" "+"name:"+student_name);
}
}
}
public static void Map_Entry(HashMap> className){
//使用具和方法,将键值对关系存储到Set集合
Set>> mp1 = className.entrySet();
Iterator>> it = mp1.iterator();
while(it.hasNext()){
Map.Entry> mp2 = it.next();
//获取班级对象
HashMap mp_class_name = mp2.getValue();
//获取班级id
String mp_class_id = mp2.getKey();
Set> student_number = mp_class_name.entrySet();
Iterator> it2 = student_number.iterator();
while (it2.hasNext()){
Map.Entrymp3 = it2.next();
//获取学生姓名
String mp_student_name = mp3.getValue();
//获取学生id
String mp_student_id = mp3.getKey();
System.out.println("class name:"+ mp_class_id+" student id:"+mp_student_id+" student name:"+mp_student_name);
}
}
}
}
package map.demo;
import java.util.*;
class MyComparator implements Comparator {
public int compare(Student s1,Student s2){
int age = s1.getAge()- s2.getAge();
return age==0?s1.getName().compareTo(s2.getName()):age;
}
}
public class treeMapDemo {
public static void main(String[] args) {
method_1();
}
public static void method_1() {
TreeMap treemap = new TreeMap<>(new MyComparator());
treemap.put(new Student("zhangsag", 23), "深圳");
treemap.put(new Student("lisi", 26), "北京");
treemap.put(new Student("wanger", 50), "广州");
treemap.put(new Student("mazi", 100), "上海");
Set> s = treemap.entrySet();
Iterator> it = s.iterator();
while (it.hasNext()) {
Map.Entry mp = it.next();
Student key = mp.getKey();
String value = mp.getValue();
System.out.println(key + " " + value);
}
}
}