Java基础
文章平均质量分 92
Java基础知识的学习
只要你一直跑
热爱分享,追求技术卓越
展开
-
[Java8新特性]Collectors源码阅读-4 mapping,collectingAndThen和toMap
这两个函数其实比较见大家原创 2021-07-02 21:25:14 · 1373 阅读 · 2 评论 -
[Java8新特性]Collectors源码阅读-3 groupingBy和partitioningBy
groupingBy三个重载partitioningBy两个重载原创 2021-06-30 21:30:02 · 1445 阅读 · 2 评论 -
[Java8新特性]Collectors源码阅读-2 reducing,maxBy,summingInt等
本节先介绍counting和maxBy,minBysummingIntaveragingInt原创 2021-06-28 22:16:24 · 1150 阅读 · 0 评论 -
[Java8新特性]Collectors源码阅读-1 toCollections和joining等
1.Collectors方法实现的种类2 toCollections类原创 2021-06-27 00:01:06 · 516 阅读 · 0 评论 -
[Java8新特性]Collector接口的组成详解
1.Collector常常出现的地方java8引入了stream,Collector是与stream一起出现的,配合stream使用的好帮手,如果用过stream,我们应该都有写过这样的代码例子1: lists.stream()....collect(Collectors.toList());例子2: lists.stream().collect(groupingBy(String::length));这两个例子中,toList()和groupingBy返回的都是一个Collector对象,原创 2021-06-14 16:40:53 · 1916 阅读 · 0 评论 -
Java多线程从零开始(一)线程的创建
参考资料:金旭亮自学网站Java基础线程的创建线程创建的两种方法方式一:继承Thread类,重写run方法,调用start()执行public class Thread1 extends Thread{ @Override public void run() { super.run(); //在这写方法重写方法 }}方式二:用Runable接口的方式实现,步骤:自定义类MyRunnable实现Runnable接口–>重写run方法原创 2020-05-25 22:29:47 · 223 阅读 · 0 评论 -
[Java基础]多线程高级4--线程池
一.为什么要使用线程池针对问题: 处理任务的线程创建和销毁都需要花销,不仅耗时也耗资源,多线程之间的切换也非常耗资源线程池优点:1.采用线程池的话可以消除线程创建的时耗,因为线程池提前把线程创建好,线程在需要使用的时候已经存在了,不需要再创建了,用完之后也不需要销毁,直接换回去就行了2.通过设置线程数目,可以防止资源不足二.ThreadPoolExecutor的全参构造函数参数介绍三....原创 2019-10-05 11:25:23 · 114 阅读 · 0 评论 -
[Java基础]多线程高级3--容器
一.容器类接口关系图(图片来源于网络)二.HashMap实现分析2.1HashMap数据结构是链表散列的数据结构,即数组和链表的结合体数组:存储区间连续,占用内存严重,寻址容易,插入删除困难链表:存储区间不连续,占用内存宽松,寻址不容易,插入删除容易HashMap综合应用了两种数据结构,实现了寻址容易,插入也容易Entry0 EntryEntryEntry1EntryEntryE...原创 2019-10-05 00:49:43 · 144 阅读 · 0 评论 -
[Java基础]多线程高级2--多线程控制类
为了保证多线程的三个特性,Java引入了很多线程控制机制,这里主要介绍几种机制作用ThreadLocal线程本地变量,提供局部变量为每个线程保存一份副本原子类保证变量的原子性lock类保证线程有序性Volatile保证线程变量可见性一.ThreadLocal1.1作用提供线程局部变量,为使用相同变量的每一个线程维护一个该变量的副本。使用的场...原创 2019-10-04 19:06:34 · 246 阅读 · 0 评论