0

使用Optional摆脱NPE的折磨

在目前的工作中,我对Java中的Stream和Lambda表达式都使用得很多,之前也写了两篇文章来总结对应的知识。 "024:Java流实现Shell:cat 1.log | grep a | sort | uniq c | sort rn" "函数式编程让你忘记设计模式" 不过对于Optional ...

javaadu 发布于 2019-07-16 04:05 评论(0)阅读(0)
0

排序--最大堆构造和堆排序(单步查看过程)

这里先简单说下最大堆的基本性质: 最大堆一定是完全二叉树 当父节点为 n 时,左孩子为 n 2 + 1,右孩子为 n 2 + 2 当孩子为 n 时,其父节点为: (n 1) / 2 这一点很重要,在后面初始化的时候会用到 父节点大于等于左孩子和右孩子,但左孩子不一定大于右孩子 了解以上基本性质之后, ...

努力爬呀爬 发布于 2019-07-16 00:26 评论(0)阅读(36)
0

数据结构-双向链表(Python实现)

数据结构在编程世界中一直是非常重要的一环,不管是开发还是算法,哪怕是单纯为了面试,数据结构都是必修课,今天我们介绍链表中的一种——双向链表的代码实现。 好了,话不多说直接上代码。 双向链表 首先,我们定义一个节点类:Node 好,我们定义了节点类,并实现了获取、修改节点数据、获取上一个/下一个节点的 ...

浩然haoran 发布于 2019-07-15 23:58 评论(0)阅读(43)
0

python数据库-MongoDB的安装(53)

一、NoSQL介绍 1、什么是NoSQL NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。 NoSQL,指的是非关系型的数据库。NoSQL有时也称作Not Only SQL的缩写,是对不同于传统的关系型数据库的数据库管理系统的统称。 NoSQL用于超大规模数据的存储 ...

Se7eN_HOU 发布于 2019-07-15 23:55 评论(0)阅读(27)
0

数据结构与算法---线索化二叉树(Threaded BinaryTree)

先看一个问题 将数列 {1, 3, 6, 8, 10, 14 } 构建成一颗二叉树 问题分析: 线索二叉树基本介绍 1、n个结点的二叉链表中含有n+1 【公式 2n-(n-1)=n+1】 个空指针域。利用二叉链表中的空指针域,存放指向该结点在某种遍历次序下的前驱和后继结点的指针(这种附加的指针称为" ...

wanbf 发布于 2019-07-15 23:44 评论(0)阅读(29)
0

NioEventLoopGroup初始化

本文是我对Netty的NioEventLoopGroup及NioEventLoop初始化工作的源码阅读笔记, 如下图,是Netty的Reactor线程模型图,本文描述NioEventLoopGroup等价于我在图中标红的MainReactor组件,全篇围绕它的初始化展开,难免地方理解的不正确,欢迎留 ...

赐我白日梦 发布于 2019-07-15 23:10 评论(0)阅读(35)
0

分布式事务(3)---RocketMQ实现分布式事务原理

分布式事务(3)—RocketMQ实现分布式事务原理 之前讲过有关分布式事务2PC、3PC、TCC的理论知识,博客地址: 1、 "分布式事务(1) 2PC和3PC原理" 2、 "分布式事务(2) TCC原理" 这篇讲有关RocketMQ实现分布式事务的理论知识,下篇也会示例 通过SpringClou ...

雨点的名字 发布于 2019-07-15 22:51 评论(0)阅读(51)
0

Spring源码阅读-ApplicationContext体系结构分析

[TOC] 上篇已经对IoC容器的设计进行了分析( "Spring源码阅读 IoC容器解析" ),本篇将对 经典的继承层次图进行详细的分析,在心中形成一个大致的印象,以便后面一步步调试源码的时候,不会太眼花缭乱。让我们一步步的前进吧... 继承层次图概览 使用IDEA的继承层次工具生成如下的图(选中 ...

张风闲 发布于 2019-07-15 22:38 评论(0)阅读(58)
0

SpringCloud解析之Zuul(一)

本文基于Spring Cloud Edgware.SR6,Zuul版本1.3.1,解析Zuul的请求拦截机制,让大家对Zuul的原理有个大概的认识和了解。如有不对的地方,欢迎指正。spring boot启动过程中,一系列spring管理的bean会被初始化,其中包括ZuulController,它通... ...

wangl110 发布于 2019-07-15 22:27 评论(0)阅读(32)
0

数据结构与算法—稀疏数组和队列

[TOC] 稀疏数组和队列 1.稀疏数组 所谓稀疏数组就是当数组中大部分的内容值都未被使用(或都为零),在数组中仅有少部分的空间使用。因此造成内存空间的浪费,为了节省内存空间,并且不影响数组中原有的内容值,我们可以使用稀疏数组去压缩数据。OK,如果你不明白,那我们来看一个例子。   在一个 ...

丁可乐 发布于 2019-07-15 21:03 评论(0)阅读(77)
3

Unity《ATD》塔防RPG类3D游戏架构设计(一)

[toc] 《ATD》 游戏简介 游戏类型 :塔防+RPG的3D游戏 游戏要素 :3D 塔防 英雄 建筑树 搭配 主体玩法 :游戏里将会有一波波怪物进攻基地。玩家可以建造塔来防御敌人,同时也可以控制单独的个体英雄角色来攻击敌人。 游戏模式 : 第三人称视角的RPG模式 上帝视角的建造模式 控制方式 ...

KillerAery 发布于 2019-07-15 21:02 评论(2)阅读(105)
0

小型的编程项目有哪些值得推荐?这本神书写了 22 个,个个了不得

本文原创并首发于公众号【 Python猫 】,未经授权,请勿转载。 原文地址:https://mp.weixin.qq.com/s/ObDK4Mt8adL4 De354rMuQ 今天,猫哥要推荐一本非常著名的开源书籍:《500 Lines or Less》。 在开始正题之前,先介绍一下它所属的系列。 ...

豌豆花下猫 发布于 2019-07-15 20:59 评论(0)阅读(191)
0

MySQL 8.0 information_schema系统库的改进

[toc] information_schema有何用? 通过I_S获取mysql的一些元数据信息 获取表的数据文件、索引文件的大小、碎片情况、表行数、自增列增长情况等 获取正在运行的事务有那些,是否有阻塞等 获取当前mysql的连接processlist等等 mysql8.0 之前的查询方式 会在 ...

Jia-Xin 发布于 2019-07-15 20:37 评论(0)阅读(55)
0

深入学习Spring框架(三)- AOP面向切面

1.什么是AOP? AOP为 Aspect Oriented Programming 的缩写,即面向切面编程, 通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术.。AOP是OOP的延续, 是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离, 从而使得业务逻辑各部分之 ...

ki16 发布于 2019-07-15 20:10 评论(0)阅读(87)
1

初识Ajax

初步认识Ajax Ajax是现在做前端的来说是一项不得不掌握的技术,其实更准确的来说是一种方法,在刚学完html和js的同学来说已经能够很好的完成一个页面的设计,以及页面与页面,页面与后台之间的交互,在信息传递的过程中我们有很多种实现的方法:表单的实现,页面的跳转以及重定向,servlet等等,然而 ...

wudidamowang666 发布于 2019-07-15 20:08 评论(0)阅读(66)
2

spark 源码分析之十三 -- SerializerManager剖析

对SerializerManager的说明: 它是为各种Spark组件配置序列化,压缩和加密的组件,包括自动选择用于shuffle的Serializer。spark中的数据在network IO 或 local disk IO传输过程中。都需要序列化。其默认的 Serializer 是 org.ap ...

轮子妈 发布于 2019-07-15 20:03 评论(2)阅读(69)
0

Java NIO学习系列四:NIO和IO对比

总结了传统Java IO和Java NIO之间的区别及各自的优缺点,希望看完本文你会有收获。 ...

木瓜芒果 发布于 2019-07-15 19:37 评论(0)阅读(65)
1

Java虚拟机详解(三)------垃圾回收

如果对C++这门语言熟悉的人,再来看Java,就会发现这两者对垃圾(内存)回收的策略有很大的不同。 C++:垃圾回收很重要,我们必须要自己来回收!!! Java:垃圾回收很重要,我们必须交给系统来帮我们完成!!! 我想这也能看出这两门语言设计者的心态吧,总之,Java和C++之间有一堵由内存动态分布 ...

YSOcean 发布于 2019-07-15 19:35 评论(0)阅读(73)
2

浅入深出Vue:注册

基本布局已经有了, 现在我们来开始做我们的注册页面~ 当然需要注册才能发表文章啊(糟老头子坏得很, 我可以只有我一个人能发啊)。 这里我们设定只有注册才能发表文章,也就淡化了管理员这个概念。在开发中先将原型做出来,然后再对其进行迭代、重构来达到我们最终想要的效果。 准备 1. 新建 组件,编写注册页 ...

若羽。 发布于 2019-07-15 19:18 评论(0)阅读(98)
0

goroutine上下文切换机制

goroutine是go语言的协程,go语言在语言和编译器层面提供对协程的支持。goroutine跟线程一个很大区别就是线程是操作系统的对象,而goroutine是应用层实现的线程。goroutine实际上是运行在线程池上的,由go的runtime实现调度,goroutine调度时,由于不需要像线程 ...

夏笑声 发布于 2019-07-15 18:57 评论(0)阅读(56)