java进阶(29)--HashMap集合

一、HashMap简介 1、HashMap底层是哈希表结构,类似字典,初始化如下: 2、哈希表结构: 是一个数组+单向链表的结构体 数组:查询效率较高,随机增删效率很低 单向链表:在随机增删方面效率较高,查询方面效率很低 哈希表将以上两种数据结构融合在一起,充分发挥它们各自的优点。 3、HashMa ... »

Java中Map,List与Set的区别

首先,数组和集合的区别: 数组是大小固定的 集合可以存储和操作数目不固定的一组数据,集合只能存放引用类型的的数据,不能存放基本数据类型 特性 List 允许重复 有序 继承自Connection Set 不允许重复 无序 继承自Connection Map 键值对 区别与List和Set,既没有继承 ... »

Java反射机制详解

作用 反射的定义:在运行状态中,能获取任意一个类的所有方法和属性;能调用一个对象的所有方法和属性。这种动态获取类信息和动态调用对象方法和属性的功能就是Java的反射机制。 注意定义中的措辞,是所有的方法和属性,即使是私有的也能调用。所以功能是非常强大的。但在我们日常开发中很少会用到反射机制,因为正是 ... »

Java并发编程:线程池ThreadPoolExecutor

多线程的程序的确能发挥多核处理器的性能。虽然与进程相比,线程轻量化了很多,但是其创建和关闭同样需要花费时间。而且线程多了以后,也会抢占内存资源。如果不对线程加以管理的话,是一个非常大的隐患。而线程池的目的就是管理线程。当你需要一个线程时,你就可以拿一个空闲线程去执行任务,当任务执行完后,线程又会归还 ... »

Java并发编程:线程和锁的使用与解析

线程的使用 新建线程 新建一个线程有两种方法:继承Thread类,然后重写run方法;实现Runnable接口,然后实现run方法。实际上Thread类也是实现的Runnable接口,再加上类只能单继承,所以推荐使用Runnable接口。示例如下: class Demo1 implements Ru ... »

java1.8新特性之stream

什么是Stream? Stream字面意思是流,在java中是指一个来自数据源的 元素队列 并支持聚合操作,存在于 包中,又或者说是能应用在一组元素上一次执行的操作序列。(stream是一个由特定类型对象组成的一个支持聚合操作的队列。)注意Java中的Stream并不会存储元素,而是按需计算。关于这 ... »

Java进阶——— 线程池的原理分析

前言 在了解线程池之前,其实首先出现的疑问是:为什么要使用线程池,其次是了解什么是线程池,最后是如何使用线程池,带着疑问去学习。 为什么要使用 前面多线程文章中,需要使用线程就开启一个新线程,简单方便,但是这样在大量线程被开启时:如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了 ... »

1.使用dom4j解析xml文件,模拟服务器解析web.xml

1. XML文档的构成 XML文档结构其实与html代码结构非常相似。 1. XML文档声明 1. 文档声明必须以结束。 2. 文档声明必须从文档的0行0列开始。 3. 文档声明只有三个属性: version:指定XML文档版本,必选,一般使用1.0 encoding:指定XML文档编码。可选,默认 ... »