- 博客(16)
- 资源 (1)
- 收藏
- 关注
原创 Java-IO流_03
ObjectOutputStream代表对象输出流,它的writeObject(Object obj)方法可对参数指定的obj对象进行序列化,把得到的字节序列写到一个目标输出流中。ObjectOutputStream可以将一个内存中的Java对象通过序列化的方式写入到磁盘的文件中。ObjectInputStream代表对象输入流,它的readObject()方法从一个源输入流中读取字节序列,再把它们反序列化为一个对象,并将其返回。把字节序列恢复为Java对象的过程称为对象的反序列化。
2024-11-28 00:36:47
630
原创 Java-IO流_02
InputStreamReader实现将字节流转化成字符流;OutputStreamWriter实现字符流到字节流之间的转换InputStreamReader的构造方法中的两个参数分别是节点流对象和编码方式。
2024-11-27 00:43:55
200
原创 Java-IO流_01
Java缓冲流本身并不具有IO流的读取与写入功能,只是在别的流(节点流或其他处理流)上加上缓冲功能提高效率,就像是把别的流包装起来一样,因此缓冲流是一种处理流(包装流)。BufferedInputStream和BufferedOutputStream这两个流是缓冲字节流,通过内部缓存数组来提高操作流的效率。BufferedWriter是针对字符输出流的缓冲流对象,在字符输出缓冲流中可以使用newLine();如果处理的是文本文件,也可以使用文件字符流,它以字符为单位进行操作。
2024-11-26 00:32:26
402
原创 Java-IO流基础
当程序需要读取数据源的数据时,就会通过IO流对象开启一个通向数据源的流,通过这个IO流对象的相关方法可以顺序读取数据源中的数据。IO流相当于一个管道。
2024-11-25 00:22:39
1063
原创 Java-容器-源码分析总结
HashMap底层实现采用了哈希表,这是一种非常重要的数据结构。对于我们以后理解很多技术都非常有帮助。数据结构中由数组和链表来实现对数据的存储,他们各有特点。(1) 数组:占用空间连续。寻址容易,查询速度快。但是,增加和删除效率非常低。(2) 链表:占用空间不连续。寻址困难,查询速度慢。但是,增加和删除效率非常高。那么,我们能不能结合数组和链表的优点(即查询快,增删效率也高)呢?答案就是“哈希表”。哈希表的本质就是“数组+链表”。HashMap中的成员变量。
2024-11-18 00:48:39
1043
原创 Java-容器-Collections工具类的使用
Collections类 提供了对Set、List、Map进行排序、填充、查找元素的辅助方法。
2024-11-18 00:30:20
183
原创 Java-容器-Iterator迭代器接口
Collection接口继承了Iterable接口,在该接口中包含一个名为iterator的抽象方法,所有实现了Collection接口的容器类对该方法做了具体实现。iterator方法会返回一个Iterator接口类型的迭代器对象,在该对象中包含了三个方法用于实现对。
2024-11-17 01:57:05
369
原创 Java-容器-TreeMap
TreeMap和HashMap同样实现了Map接口,所以,对于API的用法来说是没有区别的。HashMap效率高于TreeMap;TreeMap是可以对键进行排序的一种容器,在需要对键排序时可选用TreeMap。TreeMap底层是基于红黑树实现的。TreeMap类与TreeSet类是相似的,都需要给定排列顺序TreeMap可以对容器中的Key排序元素自身实现比较规则通过比较器实现比较规则通过元素自身实现比较规则。
2024-11-11 01:44:43
560
原创 Java-容器-双例集合
Map接口定义了双例集合的存储特征,它并不是Collection接口的子接口。双例集合的存储特征是以key与value结构为单位进行存储。相当于函数 y=f(x)Map与Collecton的区别:Collection中的容器,元素是孤立存在的,存储元素采用一个个元素的方式存储。Map中的容器,元素是成对存在的,每个元素由键与值两部分组成,通过键可以找对所对应的值。(相当于python里的字典)Collection中的容器称为单列集合,Map中的容器称为双列集合。
2024-11-10 16:47:09
871
原创 Java-容器-单例集合案例
输出结果中,Set接口容器输出结果是排好序的,尽管 HashSet 不保证元素的顺序,但在某些情况下,由于哈希表的内部实现和随机数的分布,可能会出现看起来像是排序的情况。这只是一个巧合,并不是 HashSet 本身的行为。利用单例集合(List Set接口实现类),将0-10以内的整数添加到一个容器对象中,且不能重复。
2024-11-09 18:30:19
168
原创 Java-容器-TreeSet
通过比较器定义比较规则时,我们需要单独创建一个比较器,比较器需要实现Comparator接口中的compare方法来定义比较规则。在元素自身实现比较规则时,需要实现Comparable接口中的compareTo方法,该方法中用来定义比较规则。定义一个外部类(即单独创建一个比较器,比较器需要实现Comparator接口中的compare方法来定义比较规则)TreeSet内部需要对存储的元素进行排序,因此,需要给定排序规则。比较规则与在自身定义规则时相似,先比较Age,再比较Name。通过比较器实现比较规则。
2024-11-07 00:53:56
299
原创 Java-容器-set接口
元素在数组中存放时,并不是有序存放的也不是随机存放的,而是对元素的哈希值进行运算决定元素在数组中的位置。当两个元素的哈希值进行运算后得到相同的在数组中的位置时,会调用元素的equals()方法判断两个元素是否相同。Set接口与List接口一样,继承自Collection接口,Set接口中没有新增方法,它和Collection接口保持完全一致。HashSet 是一个不保证元素的顺序且没有重复元素的集合,是线程不安全的。没有新增的方法,也没有与索引相关的方法,因为set接口有无序性。
2024-11-06 22:14:21
276
原创 Java-容器-LinkedList
int lastIndexOf (Object o) 返回最后一个匹配元素的索引,如果没有该元素,返回-1。LinkedList类相当于一个车厢节点,记录了上一个节点的地址和下一个节点的地址,中间这个节点也可以保存数据。LinkedList实现了List接口,所以LinkedList是具备List的存储特征的(有序,元素有重复)。特点:查询效率低,增删效率高,线程不安全。需要注意的是LinkedList也有索引,但不是指元素的索引,而是指链表中节点的位置。
2024-11-05 00:48:42
364
原创 Java-容器-ArrayList类的使用
removeIf 作用是删除容器中所有满足filter指定条件的元素 stream parallelStream stream和parallelStream 分别返回该容器的Stream视图表示,不同之处在于parallelStream()返回并行的Stream,Stream是Java函数式编程的核心类。boolean retainAll(Collection c) 取本容器和容器c中都包含的元素,移除非交集元素。小知识:快捷处理返回值 Ctrl+Alt+V。
2024-11-03 23:42:16
657
原创 网页设计---第一次课后练习
在此标签中主要设置了页面最上端的点击按钮,左边有“首页”,“新闻”,“体育”等字段,右边有“注册”和“登录”字段,并将左右两边设为不同的类(one_left和one_right)方便左右两边的样式设计。与第一个div标签相似,此标签也是设计了一写按钮,同样也分为左右两个部分方便设计样式,包括“更多”,“博客”,“专栏”,“退出登录”,“关于我们”这些字段。这个部分是新闻页面的主体部分,包括新闻的标题,新闻配图以及跳转至新闻页面的按钮标签,通过超链接标签设置点击按钮跳转至新闻页面。第一次练习---实践练习。
2024-10-28 00:31:04
459
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅