自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(154)
  • 问答 (1)
  • 收藏
  • 关注

原创 一文带你盘点“微服务”中的技术点

微服务导入篇,一文带你盘点“微服务”中的技术点互联网的快速发展,越来越多的公司开始由单体架构转向微服务架构。因此,微服务的学习需要被我们这些奋斗者们所掌握,在学习微服务之前,我们有必要盘点下所谓的微服务是什么,包含什么,解决了什么样的业务场景。这篇文章是学习微服务前的导入篇,后续会针对微服务架构的知识点件写一系列文章,欢迎大家关注,如有什么问题,可以随时和我沟通。1、背景2、微服务框架SpringCloud3、服务治理3.1 Eureka3.2 Zookeeper4、服务负载与调用5、服务熔断与降级6

2021-10-10 17:28:32 1478

原创 Typora+PicGo+Gitee搭建博客写作环境

Typora+PicGo+Gitee搭建博客写作环境在学习的过程中,很多同学都有记笔记的习惯,记笔记的工具有很多,大概有以下几种:WordoneNote印象笔记语雀Markdown.......总之,记笔记的软件五花八门,而程序员作为特殊的群体,他们热衷于钻研技术、分享技术,因此免不了写文章发布在各类博客平台。为了同非专业人士区分开来,程序员通常采用Markdown写作,撰写好的文章的会发布在多个博客平台,因此免不了图片复用。本文以图片复用为出发点,详细阐述了如何使用Typora+PicGo+Gi

2021-09-12 19:21:10 257

原创 没有Linux服务器,该如何学习Linux呢?

没有Linux服务器,该如何学习Linux呢?很多小伙伴学习Linux的时候,都要面临着Linux的环境的搭建,但是由于每个人的自身条件不同,通常会出现以下情况:手头富裕的小伙伴可能拿出手机扫个码,买个阿里云/腾讯云的服务器,稍微配置下就开始实操了;自身电脑还可以,同时又比较节俭的小伙伴可能装个虚拟机,安装相应的Linux系统,马马虎虎的也能用起来;电脑配置一般般,运行个虚拟机内存/CPU爆红,敲了几下Linux指令,电脑疯狂转动,等待时间大于练习时间。于是乎,部分小伙伴把愤怒撰转向了我,在微

2021-07-31 20:15:49 1008

原创 大厂的产品研发流程,你知道么

大厂的产品研发流程,你知道么?引言在企业的产品研发中,一个好的产品研发规范可以有效的提升整个团队的工作效率。由于每个公司甚至每个部门产品研发背景的不同,制定的产品研发流程规范也会存在差异,但是大体上都是相同的。本篇文章是笔者在平安好学实习过程中,以研发实习生的角度对产品研发流程的理解,平安好学隶属于中国平安,所以这套研发流程规范可以反映大多数平安系公司的研发规范。按照我的理解,产品研发可以大致分为五个流程:产品立项、需求分析、产品设计、开发上线和产品迭代。产品立项公司的立足之本在于市面上的相关领

2021-07-24 10:56:51 473

原创 This BigData,Hadoop组成及生态

文章目录引言大数据概述定义数据单位数据意义与价值Hadoop概述Hadoop组成HDFS架构概述YARN架构概述MapReduce架构概述三者之间的关系Hadoop生态圈学习资源引言随着科技的发展,我们在网上留下的数据越来越多,大到网上购物、商品交易,小到浏览网页、微信聊天、手机自动记录日常行程等,可以说,在如今的生活里,只要你还在,你就会每时每刻产生数据,但是这些数据能称为大数据么?不,这些还不能称为大数据。那么大数据数据到底是什么呢?大数据概述定义百度百科的定义:大数据是指无法在一定时间范围内

2021-05-21 12:50:08 167 1

原创 一举拿下贪心算法

大家好,我是Simon郎,一个每天想要博学一点点的小青年!今天为大家分享的是贪心算法。贪心算法:贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,算法得到的是在某种意义上的局部最优解,从而使得得到的最终结果是全局最优或者接近于全局最优。本文选取LeetCode比较有代表性的题目来学习贪心算法,选取的题目如下:文章目录1、分发饼干(455)2、分发糖果(135)3、无重叠区间(435)4、种花问题(605)5、用最少数量的箭引爆气球(452

2021-05-13 20:52:08 168

原创 手写LRU缓存淘汰算法

手写LRU缓存淘汰算法背景在我们这个日益追求高效的世界,我们对任何事情的等待都显得十分的浮躁,网页页面刷新不出来,好烦,电脑打开运行程序慢,又是好烦!那怎么办,技术的产生不就是我们所服务么,今天我们就聊一聊缓存这个技术,并使用我们熟知的数据结构--用链表实现LRU缓存淘汰算法。在学习如何使用链表实现LRU缓存淘汰算法前,我们先提出几个问题,大家好好思考下,问题如下:什么是缓存,缓存的作用?缓存的淘汰策略有哪些?如何使用链表实现LRU缓存淘汰算法,有什么特点,如何优化?好了,我们带着上面的问

2021-03-01 21:58:29 356

原创 JVM又曾对谁宽容过,垃圾终将被回收!

文章目录背景1、对象的生存周期1.1宏观视角1.2微观视角1.3对象引用2、垃圾(对象)判断2.1引用计数算法2.2可达性分析算法3、垃圾标记4、垃圾回收4.1堆的布局结构分析4.2垃圾回收算法背景在Java中有一个很重要的概念,即一切皆对象。所谓对象,就是将现实中的事物抽象出来,进而可以通过继承、实现和组合的方式把万事万物都给容纳,所以理解对象的概念在学习Java(包括所有的面向对象的语言)的过程中至关重要。当我们在程序中需要使用某个对象的时候,它就是爷爷,即使采用反射的方法也得把它创建出来;当我们

2021-02-23 09:31:17 176 1

原创 嘿,你要的Java内存模型(JMM)来了!

文章目录1、 计算机的硬件内存结构2、 Java内存模型的背景和定义3、 Java内存模型3.1 主内存、工作内存的定义3.2 内存的交互操作3.3 JMM缓存不一致问题4、 Java内存模型的实现在学习Java内存模型(JMM)前,我们先了解下计算机的硬件内存结构,因为JMM结构就是基于此演变而来的。1、 计算机的硬件内存结构在单核计算机中,计算机中的CPU计算速度是非常快的,但是与计算机中的其它硬件(如IO、内存等)同CPU的速度比起来是相差甚远的,所以协调CPU和各个硬件之间的速度差异是非常重要

2021-02-06 13:15:29 185 1

原创 深入理解JVM中的类加载机制

文章目录0、引言1、类加载概述2、类加载过程2.1 加载2.2验证2.3 准备2.4 解析2.5 初始化3、类加载器与双亲委派模型3.1 类加载器3.2 双亲委派模型0、引言现如今,各种IDE越来越智能,我们程序员的日常开发基本上都是在IDE上完成的,它可以帮助我们将更多的注意力放在实际的业务处理中,随着这种安逸的编码生活的持续,我们慢慢也就忘记了代码运行的底层原理。如果不学习,好像也没啥问题,毕竟我们的关注重点是代码逻辑实现上,当出现问题了,百度,谷歌一下,或者问问公司的狠人,问题好像也能愉快的解决,

2021-02-03 13:43:59 292 1

原创 2020年最新的大数据学习路线及职业规划指南

大数据技术生态与职业规划文章目录大数据技术生态与职业规划引言适合人群Java开发者的自白什么是大数据?大数据技术初探大数据技术路线路线总体与分支路线分支庖丁解牛计算机基础JAVA基础路线JAVA EE核心路线Hadoop生态体系学习路线Spark生态体系学习路线Flink生态体系学习路线大数据职业规划总结引言今年秋招之前,我曾以为我以后会是一名Java开发,但是在真正的秋招过程中,我出轨了大数据(呵呵,男人!),既然将它作为第一份职业,那就要好好来了解下它,要对现有的大数据的生态有个直观的理解,所以在

2020-12-03 16:02:44 3544 3

原创 JVM运行时数据区,你真得好好学一学

目录文章目录目录JVM的运行时数据区1、运行时数据区概要2、程序计数器2.1线程私有2.2执行Java方法时,计数器有值2.3执行native方法时,计数器为空3、Java虚拟机栈4、本地方法栈5、Java堆5.1堆内存的布局结构5.2对象的创建6方法区7、总结JVM的运行时数据区对于学过C++的开发者而言,他们对内存的分配与回收肯定不陌生,因为他们要对每一个对象负责(从创建到结束)。但是对于Java程序员来说,就不需要考虑那么多,因为虚拟机的内存管理机制可以帮助我们自动的管理内存,我们不再需要为每一

2020-11-20 18:38:01 116 2

原创 认识Class文件结构!

JVM入门,认识Class文件文章目录JVM入门,认识Class文件1、什么是JVM虚拟机1.1概念1.2 jdk/jre/jvm1.3代码的执行2、类文件结构2.1魔数与版本2.2常量池2.3访问标志2.4索引2.5字段表集合2.6方法表集合总结1、什么是JVM虚拟机1.1概念Java作为一门编程语言能够获得如此广泛的认可,除了它有结构严谨,面向对象的编程语言之外,它还具备一个非常突出的特性:一次编写,到处运行,即编写的程序可以摆脱硬件平台束缚,它提供了一种相对安全的内存管理和访问机制,避免了绝大

2020-11-14 22:08:27 183

原创 刷了LeetCode的链表专题,我发现了一个秘密!!!

刷了LeetCode的链表专题,我发现了一个秘密!文章目录刷了LeetCode的链表专题,我发现了一个秘密!引言1、链表的几个概念讲解1.1链表中的的指针是什么1.1指针指向哪儿1.3判断边界的条件2、必须掌握的几类题目2.1单链表反转(LeetCode206)2.2链表中环的检测(LeetCode141)2.3两个有序的链表合并(LeetCode21)2.4删除链表(LeetCode18)2.5删除链表倒数第 n 个结点(LeetCode19)2.6求链表的中间结点(LeetCode876)3、学习链表

2020-11-04 23:44:01 224

原创 Java反射的原理解析及使用

一文带你彻底理解反射文章目录一文带你彻底理解反射前言1、Java反射机制的基本概述2 、理解Class类并获取Class实例3、类的加载过程以及反射创建对象时的内存分析3.1类的加载过程分析3.2 使用反射创建对象的内存分析3.3反射相关API和提供的主要功能概述4、创建运行时类对象4.1获取Class对象的三种方式总结5、获取运行时类的完整结构5.1获取运行时类的属性5.2获得运行时类的方法5.3创建运行时类的构造器6、动态创建类的对象前言人与人交流要用语言,人与机器人的交互同样需要语言,从计算机诞

2020-10-25 11:38:12 816

原创 注解,就是那么简单!!!

深入理解注解文章目录深入理解注解1、基本介绍2 内置注解2.1@Deprecated注解2.2@Override注解2.3@SuppressWarnings注解3、元注解简介[email protected]@[email protected]@Inherited4、自定义注解5、获取注解中的参数值5.1参数值是基本类型5.2参数值是对象1、基本介绍基本概念:注解,顾名思义,就是对某一事物进行添加注释说明,会存放一些信息,这些信息可能对以后某个时段来说是很有用处的。Java 注解(Anno

2020-10-21 23:24:17 124

原创 组合拳!《数据结构与算法》+《剑指offer》来了!

数据结构与算法+剑指offer前言简介如何获取总结前言在编程领域,一直有这样一个说法:程序=数据结构+算法,由此可见,数据结构与算法的重要性。但是由于数据结构与算法相对复杂、枯燥以及较难理解,导致很多开发人员都不愿意学这部分的内容。对于他们来说,可能在平常的开发工作中很少会用到数据结构与算法,即使不懂这些内容,可能也拿到不错的薪水,那么我们为什么还要学这部分的内容呢?对于像我这样的学生党来说,一个很重要的原因就是应对笔试/面试,要不网上怎么流传着“面试造火箭,工作拧螺丝”。事实上,抛开应付企业的笔试/

2020-10-15 21:11:06 344

原创 看完这篇网络编程,和面试官就有的扯了!!!

网络编程目录文章目录网络编程1、网络编程的基本概念2、IP地址及端口号3、通信协议4、TCP通信代码实践4.1消息传递4.2文件上传5、UDP通信代码5.1 UDP实现消息发送5.2 使用UDP循环发送和接收消息5.3使用UDP实现聊天1、网络编程的基本概念引例在学习网络编程之前,我们先看这样一个例子。一般处于我们这个年龄段的同学,大都经历过写信/寄信的经历,在写信的时候,我们一般都需要明确发送的地址、联系人信息以及所在地区的邮编,邮递员可以根据这上面的信息找到接收信件的人,接收人在阅读过信件的内

2020-10-05 22:21:47 227 2

原创 秒杀剑指offer系列(51-60)

秒杀剑指offer(51-60)文章目录秒杀剑指offer(51-60)51、构建乘积数组52、正则表达式的匹配53、表示数值的字符串54、字符流中第一个不重复的字符55、链表中环的入口结点56、删除链表中重复的结点57、二叉树中的下一个结点58、对称的二叉树59、按之子形顺序打印二叉树60、把二叉树打印成多行51、构建乘积数组题目描述:给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A[1]…*A[i-1]A[i+1]…*A[n-1]。不

2020-09-29 08:30:01 121

原创 秒杀剑指offer系列(41-50)

目录文章目录目录40、数组中只出现一次的数字41、和为S的连续正数序列42、和为S的两个数字43、左旋转字符串44、翻转单词顺序列(44)45、扑克牌顺子46、孩子们的游戏(圆圈中剩下的数)47、求1+2+3+4+..n48、不做加减乘除做加法49、将字符串转换成整数50、数组中重复的数字40、数组中只出现一次的数字题目:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字思路:这道题最简单的思路就是用哈希查找哈希查找遍历数组,以数组中的值为key、出

2020-09-24 23:52:14 265

原创 秒杀剑指offer系列(31-40)

文章目录31、整数1出现的次数(从1到n整数中1出现的次数)32、把数组排成最小的数33、丑数34、第一个只出现一次的字符位置35、数组中的逆序对36、两个链表的第一个公共结点37、数字在升序数组中出现的次数38、二叉树的深度39、平衡二叉树40、数组中只出现一次的数字31、整数1出现的次数(从1到n整数中1出现的次数)题目:求出113的整数中1出现的次数,并算出1001300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没

2020-09-21 22:40:14 126

原创 秒杀剑指offer系列(21-30)

剑指offer(21-30)文章目录剑指offer(21-30)21、栈的压入、弹出序列22、从上往下打印二叉树23、二叉搜索树的后续遍历序列(23)24、二叉树中和为某一值的路径25、复杂链表的复制26、二叉搜索树与双向链表27、字符串的排列28、数组中出现次数超过一半的数字(28)29、最小的K个数30、连续子数组的最大和21、栈的压入、弹出序列题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某

2020-09-19 23:20:45 107

原创 秒杀剑指offer系列(11-20)

剑指offer(11-20)11、二进制中1的个数题目:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。思路:解决这道题的思路比较简单,就是将整数转换为二进制,然后得到二进制中1的个数,有两种方法:原码、补码、反码基础知识正整数的原码、补码和反码相同负数-5的原码,1000 0101,即在正整数的基础上加上符号位,反码则是除符号位外,每一位都取反,即1111 1010,补码则是在反码的基础上+1,即1111 0110方法一直接调用Integer中的库函数toBina

2020-09-16 22:45:53 138

原创 秒杀剑指offer系列(01-10)

文章目录1、二维数组的查找2、替换空格3、从头到尾打印链表4、重建二叉树5、用两个栈实现队列6、旋转数组的最小数字7、斐波那契数列8、跳台阶9、变态跳台阶10、矩形覆盖1、二维数组的查找题目:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路:因为该数组中的元素是行递增、列递增,那么数组矩阵中右上角的值就是行中的最大值,列中的最小值。我们可以右上角的值为起点

2020-09-14 22:41:48 106

原创 面试官:Spring Boot数据持久化有哪些?怎么配置多数据源?

在实际的Java开发中,不可避免的要对数据持久化,常用的持久化技术有MyBatis、Spring自带的JdbcTemplate和Spring Boot提供的Jpa规范。在这篇文章中,我们会逐个讲解者三种方式的使用及多数据源的配置。目录Spring Boot整合JdbcTemplateSpring Boot整合MyBatisSpring Boot整合Jpa1、SpringBoot整合JdbcTemplate大家一定都有这样的经历,刚开始学Java操作数据库时,当时没有什么框架可以使用,就使用原

2020-08-29 13:11:04 524 1

原创 乘风破浪,Spring Boot入门

SpringBoot入门篇前言​ 在普通的java项目中,大量的xml文件配置起来相当繁琐,导致了开发效率非常低下,整合第三方框架的配置可能会存在冲突问题导致部署效率低,打包方式是将项目打成一个war包放入到tomactwebapps目录下执行。简单来说,传统的开发方式有以下令人苦恼的的特点笨重的开发繁琐的配置低下的开发效率复杂的部署流程集成第三方难度大为了解决以上问题,SpringBoot被提出来了,它设计的目的就是为了简化Spring应用的初始搭建及开发过程,其约定大于配置,去繁从简。

2020-08-23 18:00:18 87

原创 一文入门MyBatis!!!

MyBatis开山篇1、MyBatis是什么?MyBatis官方定义是这样描述的,MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis可以通过简单的 XML或注解来配置和映射原始类型、接口和 Java POJO。上面文字描述太官方了,整体读下来可能仅仅了解到MyBatis是用于解决持久层方案的一款持久层框架,那么,在我们没有使用过MyBatis之前,我们使用各种各样的持久层技术来

2020-07-02 23:42:21 131

原创 MySQL锁,你真的理解么?

MySQL锁1、基本概念锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中的数据也是一种供多个用户使用的共享资源,当多个用户并发地存取数据时,在数据库加锁的目的可以保证数据库数据的一致性。锁的类型在数据库中,对数据的操作其实只有两种,即读和写,所以可用共享锁和互斥锁实现,即共享锁间之间是兼容的,而互斥锁间不兼容。共享锁(读锁):允许事务读互斥锁(写锁):允许事务删除或者更新一行数据共享锁代表了读操作、互斥锁代表了写操作,所以我们可以在数据库中并行读,但是只能串行写,只有这样

2020-06-21 18:21:53 489

原创 深入理解MySQL索引

深入浅出MySQL索引1、索引的基本概念索引是数据库中一个很重要的概念,那么什么是索引呢,通俗的讲,索引是存储引擎用于快速找到记录的一种数据结构,就如同书的目录,当要查找某一行记录时,可以在索引中快速定位所在的位置信息,然后就可直接获取目标行的记录。既然索引的出现是为了提高查找效率,那么肯定会存在不同的索引结构(模型),不同的索引模型肯定有其适应的场景,在下面文章中,我们将重点讲解常见的索引模型及其特点。2、常见的索引模型用于提高读写效率的数据结构有很多,我们常见的有哈希表、数组和搜索树。2.1

2020-06-16 11:02:13 216

原创 看了这篇文章,再也不用担心面试官问我MySQL事务了!!!

深入浅出MySQL事务事务是保证一组数据库的操作,要么全部成功,要么全部失败,这些操作必须保证是一体的,可以理解为事务是并发控制的一个基本单位,事务的的四大特性ACID是事务的基础。在MySQL中,事务的支持是在引擎层出现的。在这篇文章中,我们将会重点讲解事务的四大特性ACID、多版本控制MVCC、当前读和一致性读。1、事务的四大特性ACID1.1原子性概念原子性是指一个事务是一个不可分割的单位,其中的操作要么成功,要么失败,保证了这些操作是一体的,如果操作执行失败,则已经执行的语句必须回滚退回

2020-06-12 21:57:06 186

原创 面试官问我一条SQL语句是怎么执行的,我被叼了!!!

深入浅出MySQL中的语句执行流程MySQL是一种关系型数据库,因为是开源且是免费的,因此在企业级开发中被广泛的使用。许多开发者都能够很熟练的在业务中使用的CRUD操作,只关心操作语句产生的结果,忽略语句的执行流程,这篇文章我们会讲解MySQL的基础架构都包含什么,每个部分有什么样的作用,语句是怎么执行的。1、MySQL架构1.1总体架构先看一张图,来源于Gary Chen由上图可知,MySQL可以主要分为连接层、服务层、引擎层和存储层,我们来详细讲解下每层的作用及特点连接层:理解为客户端,

2020-06-11 22:19:58 833

原创 一文入门JVM虚拟机

JVM1、jdk、jre、jvm的联系jdk的全称是Java Development kit(java开发工具包),我们可以把程序设计语言、java虚拟机、java类库这三部分统称为jdk,jdk是用于支持java程序开发的最小环境。Developer可以很容易的使用里面的方法以减少代码量,里面同时包含jre和一些开发的小工具(如编译工具javac),同时包含了jre。jre的全称是Java Running Environment(java运行时环境 ),可以把java类库API中的javaSE的AP

2020-06-02 21:09:28 270

原创 同学,你真的理解ReentrantLock加锁过程么?

ReentrantLock加锁过程1、什么是自旋?如何实现一把自旋锁通俗的讲,自旋就是不断的判断条件触发自己执行的功能,很多线程同步的思想都来源于于自旋,我们以两个线程抢占资源来理解下自旋:我们看到,当线程t1和线程t2共同抢占资源时,假如线程t1抢占到了资源,这时t1需要加锁并设置状态state=1,线程t2过来后会先判断状态state是否为0,如果不为0则一直循环判断state,直到线程t1解锁并设置state=0,线程t2才会继续抢占资源,线程t2不断循环判断的过程就是自旋。伪代码①vol

2020-05-11 17:50:45 1949

原创 看了这篇文章,就别担心线程间的通信了!

线程间的通信1、为什么需要线程通信线程是操作系统调度的最小单位,有自己的栈空间,可以按照既定的代码逐步的执行,但是如果每个线程间都孤立的运行,那就会造资源浪费。所以在现实中,我们需要这些线程间可以按照指定的规则共同完成一件任务,所以这些线程之间就需要互相协调,这个过程被称为线程的通信。线程的通信可以被定义为:线程通信就是当多个线程共同操作共享的资源时,互相告知自己的状态以避免资源争夺。...

2020-05-07 11:33:56 2926 4

原创 一文带你读懂线程的启动和终止,

点击上方「10分钟编程」关注我呦让我们在一起每天「博学」一点点,成为更好的自己!线程的启动和终止不熟悉线程基本概念的同学,可以先看看我的上一篇文章拜托,学习并发编程之前请学习下线程!1、...

2020-05-03 18:42:48 469

原创 拜托,学习并发编程之前请学习下线程!

点击上方「10分钟编程」关注我呦让我们在一起每天「博学」一点点,成为更好的自己!一、什么是线程 学习线程,我们首先要了解什么是进程,它和进程有什么样的区别和联系?找了很多资料,大部分都是...

2020-05-01 13:03:08 275

原创 SpringBoot整合JPA连接Mysql

点击上方「10分钟编程」关注我呦让我们在一起每天「博学」一点点,成为更好的自己!1、环境准备 Mysql数据库8.0.15jdk1.8springBoot 2.2.6.RELEASE2、...

2020-04-29 10:46:31 3272

原创 看了这些排序算法,再也不用担心我的面试了

点击上方「10分钟编程」关注我呦让我们在一起每天「博学」一点点,成为更好的自己!常用的排序算法1、排序算法的概念及分类在学习排序算法前,我们先了解什么是排序,排序有哪些分类1.1、排序的...

2020-04-27 08:26:43 185

原创 Map--TreeMap

点击上方「10分钟编程」关注我呦让我们在一起每天「博学」一点点,成为更好的自己!Map--TreeMap本篇文章是基于JDK1.8分析的,在学习之前,我们先看一下TreeMap的继承链继...

2020-04-24 17:12:04 630

原创 Map---Hashtable源码解析

点击上方「10分钟编程」关注我呦让我们在一起每天「博学」一点点,成为更好的自己!Map--HashTable 上一篇文章中,我们分析了HashMap的源码,这一篇文章我们学习Map接口的...

2020-04-21 16:47:20 123

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除