Java SE基础知识点总结(六)


流:
在计算机的输入输出操作中各部件之间的数据流动。按传输方向分为输入流和输出流。
Java语言里的流序列中的数据既可以是未经加工的原始二进制数据,也可以是经过一定编码处理后符合某种特定格式的数据。
java.io包中操作文件内容的主要两大类:字节流、字符流
字节流读取的最小单位是一个字节(1byte=8bit)
字符流一次读取一个字符(1char=2byte=16bit)
所有文件的存储都是字节的,先把文件的字符编码成字节再进行存储

writer类是所有字符输出流的父类
reader类是所有字符输入流的父类
OutputStream类是所有字节输出流的父类
InputStream类是所有字节输入流的父类

对象序列化:
Bean类要实现Serializable,最好给出versionID。
不然程序会一直报java.io.NotSerializableException

泛型:
使用尖括号来指定形式类型参数,只表示类型而不表示值。

堆:堆栈数据结构只允许数据自有序列表的固定端做输入,输出操作。
   Stack继承自Vector,实现一个后进先出的堆栈。
队列:队列的数据结构规定:在有序列表中的数据输出,输入是分别由不同端进行处理,输出端称为前端,输入端称为后端。
树:树状结构是一个或者多个节点所构成的有限集合。每棵树必有一特定的节点,称为根节点。节点下可以有零个以上的子节点,各子节点也为子树,拥有自己的子节点。
链表:是一种有序的列表。链表的内容通常存储于内存中分散的位置上。
链表的串联方式:一种是利用数组结构串联的有序列表。一种是以动态内存配置的链表。


集合:
Collection接口中封装了子接口List与Set的常用方法
ArrayList底层是数组,适合查询和修改。
LinkedList底层是双向链表,适合删除与插入,并且线程不安全。
排序时,集合中不能有null元素,会报空指针异常。但可以往集合里装null。

Set:
Hashset可以装任意类型的数据,含null,底层Hash算法查询快
Treeset不能有null,不能手动排序,内含算法会自动排序,底层树算法插入快
是Set的两个实现类,两个类的方法相同,但是方法运行后结果有的不同
set没有下标,不能用for循环遍历数据,foreach和Iterator

Map:
HashMap的键可以是任意类型,值可以是任意类型,包括null
TreeMap的键可以是任意类型(除null),值可以是任意类型(包括null)
键名不能重复,集合中元素会根据键名排序
同样没有下标,不能用for循环遍历,foreach和Iterator

局部变量不能用static修饰
方法内部对变量赋值,不会改变该变量在定义时定义的值,除非这是一个静态变量
可以用char型变量存储一个中文汉字:因为java采用Unicode编码,每个字符占两个字节,而汉字也占两个字节。


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值