欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

1.Java核心API--集合

程序员文章站 2024-03-15 09:12:59
...

1.Map

1.1简介

1.Java核心API--集合

学过数据结构很容易明白,对于不同的key值通过Hash函数的运算可以到达相同的位置,这就是冲突,为了解决这个冲突可以通过

(1) 开放定址法

(2) 链地址法(HashMap采用的方法)

(3) 再哈希法

(4) 建立一个公共溢栈区

1.2实例

package collection;

import java.util.HashMap;
import java.util.Scanner;

/*1根据key值获取value值,2遍历HashMap*/
public class Collection1 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		HashMap<String, Integer> students = new HashMap<String, Integer>();
		students.put("张三", 85);
		students.put("李四", 59);
		students.put("王五", 61);
		// 根据key获取值
		System.out.println("输入学生的姓名:");
		String name = sc.next();
		if (students.containsKey(name)) {
			System.out.println(name + "的成绩时:" + students.get(name));
		}
		// 遍历HashMap
		System.out.println("-------所有学生的成绩-------");
		for (Object key : students.keySet()) {
			System.out.println(key + "的成绩是:" + students.get(key));

		}
	}
}


1.Java核心API--集合

2.List

2.1简介

List分两种一种是Arrylist,另一种是Linklist。其实,就是对应数据结构中的顺序表和链表。顺序表有利于查找但是不利于添加和删除,链表不利于查找,但是,容易添加和删除

2.2实例

package collection;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Scanner;

public class Collection2 {
	/* 遍历列表 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		// 存放三个班级的人名
		ArrayList<String> names1 = new ArrayList<String>();
		ArrayList<String> names2 = new ArrayList<String>();
		ArrayList<String> names3 = new ArrayList<String>();
		Map grades = new HashMap();
		// 一班的人名
		names1.add("张三丰");
		names1.add("杨过");
		names1.add("郭靖");
		// 二班的人名
		names2.add("小龙女");
		// 三班的人名
		names3.add("张无忌");
		// 往班级中添加成员
		grades.put("一年级", names1);
		grades.put("二年级", names1);
		grades.put("三年级", names1);
		// 根据年级查看成员
		System.out.println("请输入年级:");
		String grade = sc.next();
		if (grades.containsKey(grade)) {
			ArrayList al = (ArrayList) grades.get(grade);
			Iterator it = al.iterator();
			System.out.println("一年级的学生列表:");
			while (it.hasNext()) {
				System.out.println(it.next());

			}
		}

	}
}


1.Java核心API--集合