JAVA高级阶段技术总结-创新互联

数组与集合 数组的特点

数组中保存的元素都是有序的,可以通过下标快速访问

创新互联公司是一家专业提供沈丘企业网站建设,专注与网站建设、网站制作H5页面制作、小程序制作等业务。10年已为沈丘众多企业、政府机构等服务。创新互联专业的建站公司优惠进行中。

数组中保存的数据都是同一种类型

数组的长度在定义后,无法改变

数组无法获取其中保存的实际元素数量

Collection接口

核心的两个子接口:Set和List。

这两个接口都可以保存一组数据,Set接口保存数据时,是无序不重复的;List接口保存数据时,是有序可重复的。

List接口(有序可重复)

有序集合,元素可以重复,允许保存null,可以通过索引获取对应位置上的元素。

在接口中定义了一些操作元素的方法,如获取元素数量、添加、删除、替换、截取等。

ArrayList实现类
  • 采用数组实现的集合

  • 可以通过索引访问元素、可以改变集合大小。如果要在其中插入或删除元素时,会影响其余元素。该集合查询效率高、增删中间元素效率低。

  • 该集合对象中保存的元素,都是引用类型(对象的内存地址)。即使保存了123,其实不是保存的int类型的123,而是Integer类型的123.

构造方法

常用方法

ArrayList和LinkedList的区别
  • 两者都是List接口的实现类,保存的元素有序可重复,允许保存null,拥有一些公共的方法,如size(),isEmpty(),subList(int from,int to)等

  • ArrayList采用数组实现,对于随机读取效率更高,通常用于查询;LinkedList采用双向链表实现,插入删除不影响其他元素位置,通常用于中间插入删除。

Set接口(无序不重复)

无序集合,元素不可以重复,允许保存null,没有索引

在接口中定义了一些操作元素的方法,如获取元素数量、添加、删除、替换、截取等。

哈希表hash table

哈希表,也称为散列表,是一种数据结构,能更快地访问数据。

要保存的数据称为原始值,这个原始值通过一个函数得到一个新的数据,这个函数称为哈希函数,这个新数据称为哈希码,哈希码和原始值之间有一个映射关系,这个关系称为哈希映射,可以构建一张映射表,称为哈希表。在哈希表中,可以通过哈希码快速访问对应的原始值。

HashMap实现类  
  • JDK1.8之后,HashMap的数据结构采用"数组+链表+红黑树"实现

    • 当没有哈希冲突时,元素保存到数组中

    • 如果哈希冲突,在对应的位置上创建链表,元素保存到链表中

    • 当链表元素数量大于8,转换为红黑树

  • 数据采用"键值对"的形式保存,键称为key,值称为value ,键不能重复,允许null,值没有限制,键和值都是引用类型

  • 在哈希表中,哈希码就是键,保存的数据就是值,可以通过键得到相应的值

泛型

一种规范,常用于限制集合中元素的类型,省去遍历元素时转型的过程。

用法

在定义集合时,在接收集合变量的数据类型后,写上<数据类型>。

集合类或接口<数据类型>集合变量名 = new 集合实现类<>();

IO

I:Input输入

O:Output输出

在Java中,流用于表示计算机硬盘与内存之间传输数据的通道。

将内存中的数据存入到硬盘中,称为写write,也称为输出

将硬盘中的数据存入到内存中,称为读read,也称为输入

流的分类

Java中将流定义成了类,以对象的形式保存。流有"四大家族",是所有流的父类。

InputStream字节输入流

FileInputStream文件字节输入流 ObjectInputStream对象字节输入流(反序列化)

OutputStream字节输出流

FileOutputStream文件字节输出流 ObjectOutputStream对象字节输出流(序列化)

Writer字符输出流

FileWriter文件字符输出流 BufferedWriter缓冲字符输出流(包装流) OutputStreamWriter字节输出流转换为字符输出流(转换流)

Reader字符输入流

FileReader文件字符输入流 BuffedredReader缓冲字符输入流(包装流) InputStreamReader字节输入流转换为字符输入流(转换流)

FileInputStream文件字节输入流

按字节读取本地文件,本地文件必须存在

构造方法

常用方法

FileOutputStream文件字节输出流

按字节将数据写入到本地文件中,本地文件可以不存在

构造方法

常用方法

BufferedWriter字符缓冲输出流

自带字符数组(缓冲区)的字符输出流。

构造方法

常用方法

ObjectOutputStream对象字节输出流(序列化)

序列化:将对象转换为文件的过程

被序列化的对象,必须要实现Serializable接口。

这个接口是一个特殊的接口,没有定义方法,只是给这个类打上标记,表示该类可以被序列化。

构造方法

常用方法

ObjectInputStream对象字节输入流(反序列化)

反序列化:将文件转换为对象的过程

构造方法

常用方法

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


网站栏目:JAVA高级阶段技术总结-创新互联
链接URL:http://hbruida.cn/article/doiioo.html