java基础
文章平均质量分 79
想飞的Duke
努力一点,哪怕就一点,挺好
展开
-
jdk1.8新特性(lambda)
一、条件:必须有接口,有且仅有一个抽象方法:函数式接口@FunctionalInterface:标记是否为函数式接口二、接口类型1.comsumer接口(消费接口)对应的方法是acceptvoid accept( T);有参无返回值Consumer<String> consumer = s-> System.out.println(s);consumer.accept("传入消费的数据");eg:forEach(s-> System.out.println(s))原创 2020-10-10 16:26:56 · 172 阅读 · 1 评论 -
两个线程交替打印3次(每次运行5次)
public class MyThread { public static void main(String[] args) { final Bus bus=new Bus(); new Thread(()->{ for (int i = 0; i < 3; i++) { bus.subMethod(); } },"子线程").start(); /原创 2020-09-23 19:05:54 · 316 阅读 · 0 评论 -
时间类LocalDateTime
时间类LocalDateTimenow() 从指定的时钟获取当前的日期时间。 of(int year, int month, int dayOfMonth, int hour, int minute) 从年,月,日,小时和分钟获得 LocalDateTime的实例,将第二和纳秒设置为零。 getYear() 获取年份字段。 getDayOfMonth() 获取月份字段。getMinute() 获取小时字段。。。。。。。格式化时间 public static void原创 2020-09-22 19:50:47 · 207 阅读 · 0 评论 -
CompletableFuture(异步编程详解)
CompletableFuture一、runAsync1.1、runAsunc(一个Runnable接口)package com.thread.study.jdksyn;import java.util.concurrent.*;/** * @ClassName * @Description TODO * @Author ZQS * @Date 2020/9/9 0009 14:29 * @Version 1.0 **/public class CompletableFuture原创 2020-09-09 19:01:30 · 846 阅读 · 0 评论 -
多线程高级进阶
多线程一、volatilejmm存储三大特性可见性,有序性,原子性volatile 解决了可见性和有序性package com.thread.study.volatiles;/** * @ClassName * @Description TODO * @Author ZQS * @Date 2020/9/8 0008 16:22 * @Version 1.0 **/public class Singleton { private static Singleton原创 2020-09-11 15:11:34 · 163 阅读 · 1 评论 -
java自带的元注解
元注解一、@Target注解作用的位置(类、方法、字段……)1、@Target(ElementType.TYPE)主要是作用在类上面2、FIELD主要是作用在字段(也就是在对象属性上)3、METHOD主要作用在方法上面4、PARAMETER主要是作用在方法中参数的位置5、CONSTRUCTOR( constructor)主要是作用在构造函数上面6、LOCAL_VARIABLE (variable)主要作用在局部变量中7、ANNOTATIO原创 2020-08-26 00:23:36 · 90 阅读 · 0 评论 -
ArryList深度剖析
ArryList深度剖析一、底层数据结构1、增删改查增: 是先new一个新数组,然后将老的数组复制过去,在将新增内容填上删:也要new一个新数组,然后将数组中要删除的元素的索引位置移除改和查都不会new新数组2、是List的可变数组的实现二、继承实现关系2.1、实现Serializable接口可以序列化:将对象写到文件中可以反序列化:将文件中的对象信息读取出来2.2、实现Cloneable接口如果要实现clone方法必须有两个条件实现Cloneable的接口原创 2020-08-22 17:20:46 · 1039 阅读 · 0 评论 -
List集合_LinkedList深度剖析
List集合_LinkedList一、链表底层是由链表组成Node节点是由两部分组成1、存储的数据2、Node下一个节点的地址(用来生成链表)Node元素不连续(因为生成的地址不连续)LinkedList存储的内容1、存储链表的长度(size)2、存储第一个节点的地址(First Node)删除元素1、是将上一个元素节点指向的地址变为下下一个节点的地址2、将删除的元素Node指向的地址设置为null(断节点)二、方法2.1、查找get( int index原创 2020-08-20 22:36:52 · 225 阅读 · 0 评论 -
Map集合_HashMap
HashMap高级特性一、简介无序键值都可以为空,但是只能有一个键为空1.1、jdk1.8版本前后1、在jdk1.8之前, 主要存储的方式是数组+链表的结构 ,数组作为主体。链表主要解决hash值冲突问题(两个对象在调用hashcode()方法计算出一个相同的hash值,导致数组的索引一样,这时就要用到链表存储)2、在调用构造方法时就会创建一个16长度的数组,Entry[]table 存储键值对数据在jdk1.8之后 ,引入了红黑树存储 (当链表长度超过阈值【或者红黑树的原创 2020-08-20 22:39:04 · 173 阅读 · 0 评论