【Java-24】Java容器使用之Map类

什么是容器,有什么作用

在面向对象编程中所有实体我们都抽象为一个类,一个类可以理解为我们自定义的一种数据类型,天下间无数种实体那么就有无数种类,故也就有无数种数据类型。在基本数据类型中,我们常常使用数组来存储管理使用数据,但是现在有那么多数据类型数组明显不够用了,于是发明了容器的概念,这个容器是一个封装的类,里面实际上还是数组,但是这个数组数据类型是object类型,也就是说可以存储任意我们自定义数据类型,且容器还有个优势是可以动态增删元素,不必关系是否空间不足而越界,有点像顺序表

常用容器有List类及其子类LinkedList类List类及其子类ArrayList,本节学习Map类

Map类不同于之前两种常用容器:数组型容器ArrayList与链表型容器LinkedList,Map容器内每个结点包含两个不同类型的数据,数据都是成对出现的,一般分别用key与value表示,初始化时候两个值一同放到结点中,而查找时候可以通过ke值查找到value值

package bao_1;

import java.util.HashMap;
import java.util.Map;

public class myMap {

	public static void main(String[] args) {
		//创建Map对象
		Map map = new HashMap();

		student s1 = new student("小刚", 12);
		student s2 = new student("小明", 16);
		student s3 = new student("小华", 14);
		student s4 = new student("小强", 12);
		
		//往容器中放东西
		map.put(s1, new teacher("周老师"));
		map.put(s2, new teacher("李老师"));
		map.put(s3, new teacher("张老师"));
		map.put(s4, new teacher("王老师"));

		// 查找
		teacher Teacher = (teacher) map.get(s2);
		System.out.println(Teacher.name);
		
		
		//移除
		boolean a= map.containsKey(s1);
		System.out.println(a);
	}

}

/**
 * 学生类
 * @author 慧天地
 *
 */
class student {

	String name;
	int id;

	public student(String name, int id) {
		this.id = id;
		this.name = name;
	}

	public void func() {

	}
}

/**
 * 老师类
 * @author 慧天地
 *
 */
class teacher {

	String name;
	int id;

	public teacher(String name) {
		this.name = name;
	}

	public void func() {

	}
}

猜你喜欢

转载自blog.csdn.net/weixin_42034217/article/details/86354337
今日推荐