当前位置: 首页 > ops >正文

java24

1.双列集合Map定义

collection和Map都自有contains方法

把实现类对象赋值给接口类对象属于多态的一种,但是这样不能使用实现类里面的特殊方法和重写方法

写好的API里面好像只有数组的打印值是地址值

2.Map遍历方式

Entry是Map接口里面的一个内部接口,所以调用它需要Map.Entry,如果不想要出现"Map.",那么就需要导包:

3.HashMap

如果索引处有Entry对象,并且键属性值一样,那么新Entry将覆盖旧的Entry(即put方法底层)

注意:max的初始值不设为其中一个景点的投票值是因为可能其中一个景点没被投票,没进HashMap集合,会报错;还有,可能会出现多个投票值一样并且都是最大值的景点,所以先求最大值,再输出投票值与最大值一样的景点,这样就不会漏掉其中的景点。太细了吧。

4.LinkedHashMap

5.TreeMap

默认情况下都是基本数据类型实现Comparable,重新里面CompareTo方法,而TreeMap又会调用Comparable里面的CompareTo方法来排序,原因:

想要自定义排列就需要在TreeMap方法的形参添加Comparator对象,并重写Comparator里面的compare方法:

如果键是自定义对象,并且没有给TreeMap添加形参Comparator或者自定义对象没有实现Comparable接口,编译就会报错

下面是Student实现Comparable接口的方式,重写Comparable方法:

如果想要使用Comparator也是一样的代码

6.实例化与构造器

7.hashmap和TreeMap源码

c是class类的首字母,I是接口inteface的首字母,m是methor方法的首字母,方法名跟类名一样的就是构造方法,

方法后面有灰色的向上箭头外加灰色类名就表示这个方法的类是继承了父类或者实现了接口然后这个方法是父类或者接口的重写方法

方法本身就是灰色的并且方法后面有灰色的向右箭头外加灰色的类名就说明这个方法是继承下来的方法

f是field属性的首字母,是这个类的成员变量或者常量(static final)

源码很难看懂的原因是源码阅读性差,没注释,结合数据结构等等

源码很难懂,建议看视频

http://www.xdnf.cn/news/9806.html

相关文章:

  • 信创改造选择C86,相比于ARM架构有什么优势?
  • HOW - 简历和求职面试宝典(八)
  • 代理模式核心概念
  • 实时操作系统在脑机接口中的技术平衡:满足实时性与 AI 算力需求
  • 深入理解C#泛型:提升代码复用与类型安全的利器
  • STM32CUBE打印浮点数据-cmake配置
  • MySQL、PostgreSQL、Oracle 区别详解
  • 一个超简易的RMAN备份并保留到异地的方案,仅适用于小规模环境
  • 【大模型MCP】MCP 深度解析:AI 时代的「USB-C」接口——原理、对比、实战代码与行业落地
  • 国产三维CAD皇冠CAD(CrownCAD)在专用设备建模教程:液压升降机
  • qlora
  • 电网中三相不平衡治理的全面解析
  • 什么是范式?三大范式分别是什么?
  • JavaScript 中的 BigInt:当普通数字不够“大“时的救星
  • 企业级网络管理实战:Linux、云与容器的深度融合与优化
  • 苹果签名应用掉签频繁原因排查以及如何避免
  • 实测,大模型谁更懂数据可视化?
  • Linux应用开发之网络套接字编程
  • 基于 Arduino Uno R3 的温湿度控制风扇系统开发记录
  • Java ThreadLocal 应用指南:从用户会话到数据库连接的线程安全实践
  • 线程池上下文泄漏:跨线程池的ThreadLocal污染与防御之道
  • 【Unity高级】ScriptableObject 全面解析:从理论到实战
  • 【JSON-to-Video】添加背景图与动效技巧
  • RAII(资源获取即初始化)机制详解
  • leetcode0954. 二倍数对数组-medium
  • 【LangChain】LangChain2-基础概念P1-输入控制与输出解析
  • 负载电容匹配:晶振电路设计中被忽视的隐形杀手
  • AI模型升级与机器人产业落地同步推进
  • [ctfshow web入门] web79
  • 车载通信网络 --- 车载以太网