Java中TreeMap()与HashMap()

本文对比了TreeMap和HashMap这两种Map接口实现的区别。TreeMap基于红黑树存储键值对,能够按照键的自然顺序或者自定义比较器进行排序;而HashMap则依赖哈希码来确定元素的位置,可以通过覆盖hashCode()方法调整输出顺序。

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

#TreeMap()与HashMap()相对于Hashset(),LinkedList()等都是双列容器,继承于接口Map();

1.TreeMap()构建后打印出来的顺序是从上到下,从左到右按照从小到大的顺序排列,Tree顾名思义是一种树形结构。其中,可以通过Comparator接口来给TreeMap()赋予参数,从而实现自定义顺序,下面是一个简单的例子:

import java.util.Comparator;

//自定义一个类作为test

Class Teacher  Comparatot{

//Code here

}

Class Test{

public static void tt()

{

Teach tea = new Teach();

Map<Integer, Teacher> map = new TreeMap(tea);

}

publi static void main()

{

tt();

}

Class Teach implements Comparator

{

//Code here

//自定义排练顺序

}

}


2.HashMap()是通过Hash数来排列输出的顺序的,不过也可以通过改变值的hashCode()方法来改变输出顺序。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值