黑马程序员———JAVA容器学习笔记

黑马程序员入学Java知识——精华总结 黑马程序员入学Java知识——精华总结   J2SE部分,Java高新技术部分,7K面试题部分等黑马入学要求的知识点总结!   一、黑马程序员—java概述与基础知识 6 1、何为编程? 6 2、Java语言概述,历史、特点 6 3、什么是跨平台性?原理是什么?JVM 7 4、Jre和Jdk的区别? 7 5、java虚拟机JVM 8 6、 Java程序运行机制 8 7 阅读详情
---------------------- android培训、 java培训、期待与您交流! ----------------------

通过容器这章的学习,使我对JAVA容器有了新的了解,现在总结如下:

容器:

Collection

|--- List:元素是有序的,元素可以重复,因为该集合体系有索引。

| ---- ArrayList: 底层的数据结构使用的数据结构。特点:查询,修改数据比较快,但是增删稍慢。线程不同步。默认长度为10 按50%增长

| ---- LinkedList: 底层的数据结构使用的是莲表数据结构。特点:增删速度很快,查询稍慢。

| ---- Vector: 底层是数组数据结构。线程同步。被ArrayList替代。默认长度为10 按100%增长。

|--- Set:: 元素是无序(存入和取出的顺序不一定一致),元素不可重复。

 

| --- HashSet:底层数据结构是哈希表。

       HashSet是如何保证元素唯一性呢?

是通过元素的两个方法:HashCode和equals来完成的

如果元素的HashCode值相同,才会判断equals是否为true.

 如果元素的HashCode值不同,不会调用equals.

 

注意:对于判断元素是否存在,以及删除等操作,依赖的方法是元素的HashCode 和equals方法。

 

| ---- TreeSet:可以对Set集合中的元素进行排序

  底层数据结构是二叉树。

  保证元素唯一性的依据。      

   compareTo方法return 0:

 

   TreeSet 排序的第一种方式:让元素自身具备比较性

   元素需要实现Comparable接口,覆盖CompareTo方法。

   这种方式也称为元素的自然顺序,或者叫做默认顺序。

 

  TreeSet 排序的第二种方式:

   当元素自身不具备比较性时,或者具备的比较性不是所需要的。

   这是就需要让集合自身具备比较性

   在集合初始化时,就有了比较方式(参照TreeSet的构造函数)

| ---- Map

 

| ---- Hashtable:底层哈希表数据结构,不可以存入null键null值,该集合是线程同步的。Jdk1.0 效率低。

 

| ---- HashMap:底层哈希表数据结构,可以存入null键null值,该集合不同步的。Jdk1.2 效率高。

 

| ---- TreeMap:底层是二叉树,线程不同步,可以用于给Map集合中的键进行排序。

 Map集合的两种取出方式:

1.       Set<k> keySet: 将Map中所有的键存入到Set集合,因为Set具备Iterator

所以可以以迭代方式取出所有的键,在根据get方法,获取每一个键对应的值。

 

2.       Set<Map.Entry<K,V>> entrySet

 

把数组变成List集合有什么好处?

可以使用集合的思想和方法来操作数组中的元素。

 

注意:将数组变成集合,不可以使用集合中的增删方法。

因为数组的长度是固定。

 

如果数组中的元素都是对象,那么变成集合里,数组的元素就直接转成集合中的元素。

如果数组中的元素是基本数据类型,那么会将数组作为集合中的原始存在。

 

---------------------- android培训、java培训、期待与您交流! ----------------------

详细请查看:http://edu.youkuaiyun.com/heima

 

告别反复刷写:用英飞凌XCP Overlay功能实现ECU标定与诊断的‘热更新’ 本文详细介绍了英飞凌XCP Overlay功能在ECU标定与诊断中的应用,实现参数的'热更新',避免反复刷写Flash。通过地址重映射技术,将标定变量从Flash重定向到RAM,显著提升工作效率并保护Flash寿命。文章涵盖技术原理、工程实践、功能安全考量及高级应用场景,为汽车电子工程师提供完整解决方案。 阅读详情

相关推荐

SBP依赖计算中的蝴蝶效应:一个Prefab修改如何触发全量重建?

本文深入探讨了Unity中SBP(Scriptable Build Pipeline)依赖计算的蝴蝶效应,解析了Prefab修改如何触发全量重建的机制。通过分析Asset与Object的层级关系、依赖计算的三种维度及CacheEntry系统,揭示了全量重建的根本原因,并提供了依赖可视化工具开发、优化策略与最佳实践,帮助开发者提升构建效率。

weixin_29015051的博客 444

黑马程序员java学习笔记——String字符串及StringBubuffer容器

字符串     String类     概述     API:java给我提供的应用程序接口,暴露出来的能让我们使用的部分。     字符串:是一个特殊对象,它的最大特点就在于一旦被初始化,就不可以被改变。     就比如说:String s1 = "abc";然后我们在给s1赋其他值,s1 = "kk";这其实是s1变了,它指向了"kk",而"abc"并没有改变,"abc

魏天翔的博客 675

保姆级教程:用微信小程序+OneNet MQTT API,5分钟搞定温湿度数据实时展示

本文提供了一份详细的教程,教你如何利用微信小程序和OneNet MQTT API在5分钟内实现温湿度数据的实时展示。从OneNet平台配置到小程序数据绑定,手把手指导零基础开发者快速搭建监控系统,涵盖API调用、数据解析和界面设计等关键步骤。

weixin_30298497的博客 368

黑马程序员Java教程学习笔记(二)

黑马程序员Java教程学习笔记(二)

末初 · mochu7 3197

利用CANoe和CAPL实现高效CAN网关设计与仿真

本文详细介绍了如何利用CANoe和CAPL进行高效CAN网关的设计与仿真。通过搭建仿真工程、导入DBC数据库、编写CAPL脚本等步骤,手把手指导读者构建一个连接不同CAN网络的网关模型,实现报文的监听、转发与信号处理,从而在硬件开发前验证逻辑,提升汽车电子开发效率与可靠性。

weixin_29164091的博客 294

通过Python实现物联网金橙子自动打标

对于自家公司使用金橙子打标卡时,为了与生产线或者PLC联动等,往往需要对金橙子打标卡进行二次开发,而在二次开发中不得不涉及到MarkEzd.dll这个文件,而这个dll文件网上版本多不说,一般都没法直接使用,最后还不得不花大价钱购买专用库。而本文针对这个问题,涉法通过python来绕过MarkEzd.dll文件,直接进行自动化控制EzCad来实现联动,可应用于实际生产。文章最后拓展一下以物联网的形式,实现手机平台等登录网页,输入想要的印字内容后,远程打印的案例。

lylelo的博客 3365

黑马程序员Java实战项目--- ATM系统

黑马程序员Java实战项目--- ATM系统

技术专家 2436

YOLO11改进|注意力机制篇|引入MLCA轻量级注意力机制

YOLO11中添加MLCA轻量级注意力机制

A1983Z的博客 4054

2022黑马程序员Java学习路线图

初学者可按以下路线学习:入门:Java SE基础-->Java Web(含数据库+H5+js+vue)中级:Maven-->Git-->SSM框架 -->MybatisPlus-->Spring Boot-->传智健康【项目实战】--> 瑞吉外卖【项目实战】进阶:Spring Cloud(微服务开发,学这一套就够了) 也可分技术点学: (Dubbo-->Zookeeper-->RabbitMQ-->RocketMQ-->Docker-->Redis -->MongoDB-->搜索技术Elasticsea

zy1992As的博客 4413

AutosarMCAL开发——基于EB CRC驱动

本文为博主个人理解总结记录,如有不正,欢迎指正。

qq_45583706的博客 1389

springboot&mybatis中数组和字符串数据类型的转换

/前端数组字段//数据库中字段/*与前端交互时使用的get/set*/System.out.println("接收前端数据");/*与前端交互时使用的get/set*//*与数据库交互时使用的get/set*/System.out.println("从数据库中读取数据");/*与数据库交互时使用的get/set*/

l_q_l的专栏 2475

黑马程序员 — 容器

------- android培训、java培训、期待与您交流! ---------- 容器 容器: 什么是容器: 组件通常不能独立显示出来,必须放在一定的容器中才可以显示出来,有一类特殊的组件用来专门包含其他组件的,这类组件叫容器 java

INT_INIT的专栏 687

UWB 多传感器通信的纳秒无线位置和时钟同步方法

利用UWB高精度的特点,实现多节点下的无线时钟同步和定位。通过优化硬件架构,减少不确定延迟的影响,系统可以提供纳秒级时钟同步消息

DT程序员的博客 1326

黑马程序员—Java容器笔记

容器与数组是可以互相转换的。 rin

HOLLYWOOD2012的专栏 500

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

黑马程序员英语单词册

黑马程序员英语单词册经过几天的整理黑马程序员将必备的 600 词汇,和有关计算机需要掌握的词汇整理出来,分享给大家学习,希望对你有所帮助。

程序员猫爪 2408

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

黑马程序员 GUI

dg

h 719

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

【黑马程序员】Docker笔记记录

前言:主要来源于黑马程序员Docker教程利用Docker快速的安装了MySQL,非常的方便,不过我们执行的命令到底是什么意思呢? 镜像的名称不是随意的,而是要到DockerRegistry中寻找,镜像运行时的配置也不是随意的,要参考镜像的帮助文档,这些在DockerHub网站或者软件的官方网站中都能找到。如果我们要安装其它软件,也可以到DockerRegistry中寻找对应的镜像名称和版本,阅读相关配置即可。接下来,我们一起来学习Docker使用的一些基础知识,为将来部署项目打下基础。具体用法可以参考D

lxy781774017的博客 402

黑马程序员Javaweb学习笔记01

根据黑马程序员Javaweb总结的笔记

weixin_61263533的博客 3304

黑马程序员_JAVA StringBuffer和StringBuilder容器

------- android培训、java培训、期待与您交流! --------- 黑马程序员_JAVA StringBuffer和StringBuilder容器 一.什么是StingBuffer? 1.首先他是一个容器。 2.长度是可以变化的。 3.可以操作多种数据类型。 4.最终可以通过String方法变成字符串。 二.操作方法 1.存储:StringBuffer appen

merjay的专栏 604

Java-黑马程序员

一次编译随处运行openJDK: JDK核心功能(Oracle)+非核心同等实现的开源代码java SE桌面应用 java ME嵌入式设备 java EE网站(浏览器+服务器)开发应用:科学计算matlab 大数据开发hadoop等面向对象、跨平台、多线程、开源why跨平台:编译型 .c-.obj(arm架构、x86架构)解释性混合型.java-.class(arm架构、x86架构)-虚拟机上运行JRE&JDKJREjave runtime environment运行环境:JVM核心。

christina23_的博客 893

黑马程序员笔记:小白必看——Java学习路线

Java面试宝典(含阿里、腾迅大厂java面试真题,java数据结构,java并发,jvm等java面试真题)以100+企业大厂真实高频Java面试真题为主干,辅以数据结构的可视化展示、算法的可视化展示,窥探底层的工具使用等等可视化手段,用直观、形象的方式展现复杂的知识内容,让学生更清晰、更容易地掌握这些Java面试题与Java知识点。同时在多通道的加持下,通过智能动态的通道评级、选举、降级、热插拔,增强了系统的健壮性,摆脱对单一通道的依赖,并且提供多种对接方式,满足企业内部的各种需求。

Future_yzx的博客 2755

【SSM】Spring学习笔记1: IoC的XML配置

文章基于。

2301_76391858的博客 1219

JAVA笔记(黑马程序员)

但是,在多线程环境下,如果多个线程同时访问一个StringBuilder对象,就可能会发生数据竞争的问题,导致程序出错。StringBuffer是线程安全的,因为它的方法都是同步的,也就是说,在多线程环境下,多个线程可以同时访问一个StringBuffer对象,而不会发生数据竞争的问题。的时候 如果父类不存在需要重写的方法 那么就会错误(也就是说 这种方式创建的父类对象可以调用子类中对父类重写的方法 但无法直接调用子类新增的方法或同名方法)--------------->代表导入全部的包。

欢迎访问我的个人Blog网站:blog.homeryland.org 1767

学习springboot的笔记之注释的说明(黑马程序员的笔记)

当你看到这篇文章,这里我就强烈建议你自己去看黑马程序员的Java web教程。

2201_75371220的博客 325

Python学习笔记-数据容器

什么是容器?容器是一种可以存储多个元素的Python数据类型python中的容器有哪些?list(列表)、tuple(元组)、str(字符串)、set(集合)、dict(字典)数据容器可以从以下视角进行简单的分类:是否支持下标索引支持:列表、元组、字符串 - 序列类型不支持:集合、字典 - 非序列类型是否支持重复元素:支持:列表、元组、字符串 - 序列类型不支持:集合、字典 - 非序列类型是否可以修改支持:列表、集合、字典不支持:元组、字符串。

Y_eatMeat的博客 1093

【黑马程序员JAVA笔记+完整代码】DAY04 数组

黑马Java网课笔记

CherryTaylor的博客 587
上一篇: 黑马程序员-------- 浅谈JAVA反射机制
下一篇: 黑马程序员———JAVA面向对象程序设计基础笔记
laester
博客等级 码龄19年 36粉丝 43原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值