Java学习之TreeMap

本文主要探讨了Java中的TreeMap,包括其元素顺序、底层的Tree算法、遍历方式,以及HashMap与TreeMap的相同点和不同点。特别指出,HashMap提供快速访问,而TreeMap则按照排序返回键值对。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、元素顺序

元素顺序与排序规则有关

二、底层算法

Tree算法

三、遍历

package com.edu.map;

import java.util.Map.Entry;
import java.util.Set;
import java.util.TreeMap;

public class TreeMapDemo {
	public static void main(String[] args) {
		TreeMap<Integer, String> tMap = new TreeMap<Integer,String>();
		tMap.put(1, "java");
		tMap.put(4, "c++");
		tMap.put(2, "python");
		tMap.put(6, "php");
		//根据键的集合遍历TreeMap
		//获取键的集合
		Set<Integer> set = tMap.keySet();
		
		//利用foreach进行遍历
		for (Integer key : set) {
			System.out.println(key+"  "+tMap.get(key));
		}
		
		System.out.println("-----------------");
		//利用entrySet()进行遍历
		Set<Entry<Integer,String>> set2 = tMap.entrySet();
		for (Entry<Integer, String> entry : set2) {
			System.out.println(entry.getKey()+"  "+entry.getValue());
		}
	}
}
/*  1  java
	2  python
	4  c++
	6  php
	-----------------
	1  java
	2  python
	4  c++
	6  php
*/

四、HashMap和TreeMap的相同点和不同点

相同点:主要用于存储键值对,根据键得到值,键不能重复,值可以重复

不同点:

1、HashMap里面存入的键值对在取出的时候是随机的,也是我们最常用的一个Map.根据键可以直接获取它的值,

具有很快的访问速度。在Map 中插入、删除和定位元素,HashMap 是最好的选择。

2、TreeMap取出来的是排序后的键值对。但如果您要按自然顺序或自定义顺序遍历键,那么TreeMap会更好




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值