摘要: java克隆 为什么需要克隆 我们在很多时候需要使用一个对象去记录另外一个对象的当前状态,对象中可能会有很多属性,如果我们一个一个去设置,不仅不方便,而且效率很低,我们看一个初学者可能遇到的问题 也许有的人认为Person p2=p1这样的方式就可以克隆一个对象,这种想法是错误的,这种使用等号赋值的 阅读全文
posted @ 2020-04-09 23:33 moyuduo 阅读(524) 评论(0) 推荐(0) 编辑
摘要: 链表 链表是一个以节点存储的有序列表,每个节点包括data域和next域,data域是用来保存值的,next域是保存下一个节点的地址,根据有无头节点,链表可分为带头节点的链表和不带头节点的链表 单链表 不带头节点的单链表 带头节点的单链表 双链表 分析为什么要双链表 1. 单链表每个节点只保存了后继 阅读全文
posted @ 2020-04-08 23:46 moyuduo 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 队列 队列是用数组或链表实现的,遵循先进先出规则的一个有序列表 使用数组模拟队列 分析:虽然队列中的元素已经全部出队,但是由于我们的队列是使用数组模拟的,而且每次入队的时候,头指定都后移,当我们入队次数增加,总有一时刻,头指针指向数组最大下标,尽管我们有出队,但是任然不能入队元素,我们可以使用数组模 阅读全文
posted @ 2020-04-07 23:45 moyuduo 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 稀疏数组 介绍 当我们在处理如五子棋这类棋盘问题时,只有棋盘中的黑子和白字位置对于我们来说是由具体意义的,当一个二维数组中的绝大多数值都是某一个值时,我们选定位默认值,我们可以使用稀疏数组来保存,以达到节约空间的目的 处理过程 1. 创建一个n+1行3列的二维数组(n为待压缩数组中不同于选定默认值的 阅读全文
posted @ 2020-04-06 22:31 moyuduo 阅读(214) 评论(0) 推荐(0) 编辑
摘要: 数据库隔离级别 如果没有隔离级别会出现的问题 脏读 意思是读取到了事务正在修改的数据,如果事务回滚,那么拿到的数据就是错误的 时间 事务A 事务B 1 开始事务 2 读取quantity为5 3 修改quantity为4 4 开始事务 5 读取到quantity为4 6 发生错误,回滚,quanti 阅读全文
posted @ 2020-04-05 22:15 moyuduo 阅读(554) 评论(0) 推荐(0) 编辑
摘要: 时间 java8以前使用的时间很多方法都已经废弃了,而且不是线程安全的,java8提供了一系列的时间类,这些时间类都是线程安全的 LocalDate、LocalTime、LocalDateTime 这三个关于时间的类在使用上都类似 时间戳 Duration获取时间间隔 Peroid获取日期间隔 Te 阅读全文
posted @ 2020-04-03 22:35 moyuduo 阅读(529) 评论(0) 推荐(2) 编辑
摘要: 接口默认方法和静态方法 默认方法 如果类的父类的方法和接口中方法名字相同且参数一致,子类还没有重写方法,那么默认使用父类的方法,即类优先 如果类实现的接口中有名字相同参数类型一致的默认方法,那么在类中必须重写 静态方法 重复注解 以前我们是这样使用注解,当要在一个方法上标注两个相同的注解时会报错,j 阅读全文
posted @ 2020-04-03 00:07 moyuduo 阅读(339) 评论(0) 推荐(0) 编辑
摘要: Stream 介绍 java8添加了一个抽象流Stream,可以让我们像写sql一样操作集合元素。Stream将要处理的元素看做是一种流, 在管道中传输,并进行处理,最后由终止操作得到处理的结果。 什么是Stream? Stream是一个来自特定元素队列并支持聚合操作 元素是具体类型的对象,形成一个 阅读全文
posted @ 2020-04-01 23:32 moyuduo 阅读(348) 评论(0) 推荐(0) 编辑
摘要: Lambda表达式 简介 Lambda表达式可以取代大部分匿名内部类,可以优化代码结构。 可以取代匿名内部类?什么意思呢? 在以前如果我们需要对集合排序,我们是这样做: 使用Arrays类提供的sort方法传入一个指定排序规则的Comparator,如果我们使用匿名内部类的话,可以看到整个内部类中只 阅读全文
posted @ 2020-03-30 21:51 moyuduo 阅读(120) 评论(0) 推荐(0) 编辑
摘要: equals和hashCode方法 equals 我们知道equals是用来比较两个对象是否相等的,比如我们常用的String.equals方法 hashCode方法 hashCode方法是通过一定的算法得到一个hash值,一般配合散列集合一起使用,如HashMap、HashSet都是不可以存放重复 阅读全文
posted @ 2020-03-27 15:43 moyuduo 阅读(219) 评论(0) 推荐(0) 编辑