- 博客(27)
- 资源 (1)
- 问答 (2)
- 收藏
- 关注
原创 什么是中台
什么是中台?中台是企业级能力复用平台,利用平台化的思维和手段梳理、识别、沉淀与复用企业级核心能力的过程。中台怎么分类?中台主流分类(业务数据双中台):业务中台:产生数据 数据中台:做数据的二次加工,将结果服务于业务,进行数据赋能中台其他分类:技术中台:将技术中间件进行整合和包装 研发中台:关注开发效能管理 移动中台:将app通用组件封装沉淀 管理中台:企业内部管理 ...
2019-10-22 16:38:19
503
原创 Object源码解析
1.registerNatives()方法对使用静态块对象进行初始化,对象在调用时自动调用此方法。(native关键字是,java调用底层C++的实现)private static native void registerNatives(); static { registerNatives(); }2.getClass()通过反射的方式返回Object的...
2018-09-07 11:40:19
185
1
原创 线程与进程
关于 并行与并发多线程只有一个目的,就是更好的利用cpu资源。并行:多个cpu或多台机器同时进行一段逻辑处理。比如并查集。并发:多个程序在同一处理机运行,但同一时刻只有一个程序在运行。 线程与进程的关系这两个名词不过是对应的cpu时间段的描述,只不过是颗粒度大小不同,进程包含线程。进程就是上下文(程序的运行环境)切换程序执行时间的总和=cpu加载上下文+cpu执行+cpu保存上下文。线程是什么?比...
2017-09-23 17:37:02
253
原创 KMP算法Java实现
源代码如下所示:package com.zuoshen;public class Problem_02_KMPAlgorithm { public static int getIndexOf(String s, String m) { if (s == null || m == null || m.length() < 1 || s.length() < m.length()) {
2017-09-04 21:41:50
491
原创 Java实现邮件发送(带附件)
1、需要导入mail.jar、activation.jar这两个邮件发送的jar包,可在网上搜索并下载2、需要设置相关邮箱服务器,我用的是QQ邮箱,操作如下所示:开启相关服务,并生产授权码(这个代码中会用到)。代码如下所示:package com.ecg.controller;import java.io.UnsupportedEncodingException;
2017-08-29 17:39:28
10325
8
原创 JVM对象的创建
1 对象的创建在Java语言层面上,创建对象(克隆、反序列化)通常仅仅是一个new关键字而已,但是在Java虚拟机中是一个怎样的过程呢?
2017-08-25 17:05:16
178
原创 JVM内存分配
jvm所管理的内存包括以下几个运行时数据区域:1 程序计数器程序计数器可以看做当前线程所执行的字节码的行号指示器,通过改变计数器的值来选取下一条执行的字节码指令、循环等等基础功能。
2017-08-25 10:07:12
205
原创 Java实现判断二叉树是否为平衡二叉树
平衡二叉树的定义是:它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。我们要判断是否为平衡二叉树就要一直递归判断它的子树是否为平衡二叉树,一层层去判断。代码如下所示:package problems_2017_08_21;/** * @author islongfei * 判断二叉树是否为平衡二叉树 * (它是一 棵空树或它
2017-08-25 09:37:34
502
原创 Java实现Morris遍历二叉树
Morris遍历二叉树是遍历二叉树的神级方法,它的时间复杂度仅为O(n),空间复杂度为O(1)。主要包含以下两大步骤:1、拿到一个节点,如果该节点无左子树,那么节点指向它的右节点。2、如果这个节点有左子树,找到左子树的最右节点。 a、如果最右节点指向null,则让最右节点指向当前节点,并将该目标节点向左孩子移动。 b、如果最右节点已经指向该节点,则让最右
2017-08-24 22:48:02
1317
转载 面试中的JVM
这个帖子的背景是今晚看到je上这张贴:http://www.iteye.com/topic/715256,心血来潮写下的文字,如果能抛砖引玉,能有其他面试官分析一下自己面试时问的问题,那或许是件很有意义的事情。 在公司当技术面试官几年间,从应届生到工作十几年的应聘者都遇到过。先表达一下我自己对面试的观点: 1.笔试、面试去评价一个人肯定是不够准确的,了解一个人最准确
2017-08-07 10:04:45
214
原创 BFPRT算法(求前k个小的数)-Java实现
最近学习了左神BFPRT算法,给大家先讲个段子。左神说他每次去美国面试,他都会拿BFPRT算法吹一吹。美国5个大佬在一个美丽的地方研究出来这个算法,他说自己热爱算法,他会BFPRT,每次去美国都会怀着朝圣的姿态去在那个地方转转。面试官一听:哇,这么厉害,过!!!!!!!好了,下来说说这个算法。BFPRT算法是在进行大量数据排序求topk(前k个最大或最小的数)时最优算法。为...
2017-08-05 11:26:33
1145
原创 Master公式计算递归时间复杂度
我们在算递归算法的时间复杂度时,Master定理为我们提供了很强大的便利!主要公式为:T(n)=aT(n/b)+f(n),条件是a>=1,b>1.为了方便起见,我们可以把上述公式转化为这样:F(n)=aF()
2017-08-03 23:00:10
3347
原创 二维数组寻找小岛
有这样一道题:是不是看起来很复杂,昨天听了左神讲的课,他用了一个简单的算法,时间复杂度只有O(N*M)数组长度那么少!一开始看这个题,没有什么思路,想着这个题时间复杂都肯定很高吧!直到最后才发现,卧槽,还有这种操作!!!!话不多说,直接上自己的代码!package com.zuoshen;public class Problem_02_Islands {/* 给
2017-08-03 14:16:00
1479
原创 浅谈Integer
public static void main(String[] args) { Integer f1 = 100, f2 = 100, f3 = 150, f4 = 150; System.out.println(f1 == f2); System.out.println(f3 == f4); }今天看到这样一道题;cl
2017-08-02 16:26:51
1479
原创 浅谈String、StringBuffer、StringBuilder
String:首先我们要明确,String并不是基本数据类型,而是一个对象,并且是不可变的对象。查看源码就会发现String类为final型的(当然也不可被继承),而且通过查看JDK文档会发现几乎每一个修改String对象的操作,实际上都是创建了一个全新的String对象。 字符串为对象,那么在初始化之前,它的值为null,到这里就有必要提下””、null、new String()三者的
2017-08-01 09:20:18
324
原创 Java中的equals();
对象都有equals()方法,是判断两个对象是否相等,是指向地址的比较。并不是所有对象的equals()的方法是相同的,在一些类中对equals()进行了重写,例如String、Math。jdk1.7的String的equals()如下所示:public boolean equals(Object anObject) { if (this == anObject) {
2017-07-31 20:00:51
315
原创 抽象类和接口区别
1 、本质不同: 抽象类是类而接口不是类。2 、 定义的维度不同:抽象类是对类抽象,而接口是对行为的抽象。抽象类是对整个类整体进行抽象,包括属性、行为,但是接口却是对类局部(行为)进行抽象。例如猫、狗可以抽象成一个动物类抽象类,具备叫的方法。鸟、飞机可以实现飞Fly接口,具备飞的行为,这里我们总不能将鸟、飞机共用一个父类吧。3、 设计方式不同:抽象类,我们要先知道子类才能抽象出父类。而接口则不同,...
2017-07-31 14:31:03
306
原创 字符串之替换空格
有道题是这样的:请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。首先想到的是根据Java提供的StringBuffer中的repalceAll直接替换。并利用正则表达式表示空格,提高效率。一行代码便能解决问题!代码如下所示:package com.wlf.String;public cla...
2017-07-30 19:05:35
416
2
原创 iText7画坐标图
这次主要画的是心电图诊断报告,用iText7生成pdf。iText7的相关jar包可在iText7官网下载。代码如下所示: package com.pdf;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import com.i...
2017-07-24 14:45:06
2203
1
原创 js定时动态增加列表
主要思想是:js定时器调用增加表格一行的方法,每隔1000ms增加一次,实现定时刷新。css样式用的bootstrap 病人姓名 性别 年龄 病单发出时间 状态 处理 张三 男 45 2017-07-21-17:19 未诊断 去诊断 ...
2017-07-24 14:33:25
798
转载 java性能优化
代码优化 ,这个在开发界内是个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以抓大放小,代码的细节可以不精打细磨;但是如果有足够的时间开发、维护代码,这时候
2017-04-24 21:03:20
204
原创 鸡汤
紫薇失明的那一集 尔康是在妓院找到她的紫薇永远不会问 那天尔康为什么会去妓院 加菲走失后被卖到了宠物店 它担心主人乔恩会因为想念它而痛苦 但在一个清晨 乔恩走进了宠物店 他看见了加菲 又开心的把加菲买回去 一家团圆皆大欢喜故事的最后加菲猫在夕阳下说了这样一句话 我永远不会去问乔恩 那天他为什么会走进宠物店 有些事真的没必要做有些话真的没必
2017-04-17 16:10:38
304
原创 数组排序
package com.wlf.array;import java.util.Arrays;import java.util.Comparator;public class ArraySort { public static void main(String[] args) { Integer[] intArr = new Integer[] { 23, 34, 4,
2017-04-14 16:37:44
371
原创 快速排序
package com.wlf.array;public class QuickSort { /* * 快速排序 时间复杂度:O(n)-0(n²) 空间复杂度O(1),需要一个辅助空间作参考。 * * 可以简单理解为"挖坑填数"+"分治法(递归)" * 先取一个参考数x,比x小放其左边,反之放右边。(以x参考,相当于在x处挖了个坑,那么就必须填坑)
2017-04-12 18:25:27
448
原创 MyBatis自动生成实体、DAO接口、Mapping映射文件
我们在使用mybatis时手写配置很容易出现错误且查错很麻烦,我们用自动生成的功能可以省去很多功夫。个人认为以下的方式很简单,不需要在ecslipse安装插件,只需要几个jar包即可,将生成的代码直接复制到项目中去即可。 生成代码需要的文件如下所示: (文件下载地址: http://do...
2017-03-19 16:50:51
843
1
原创 Java中堆栈及内存分配原理
一、内存分配1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制。2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)3. 堆:存放所有new出来的对象,以及数组。4. 静态域:存放静态成员(static定义的)5. 常量池:存放字符串常量和基本类
2017-03-13 21:42:04
404
怎样用java实现每当数据库增加一段数据,前台网站就会动态添加一个列表?
2017-07-21
LitePal 找不到DataSupport
2017-06-06
TA创建的收藏夹 TA关注的收藏夹
TA关注的人