摘要: 程序员逻辑题 - 三门问题 介绍 三门问题(Monty Hall problem)亦称为蒙提霍尔问题、蒙特霍问题或蒙提霍尔悖论,大致出自美国的电视游戏节目Let's Make a Deal。问题名字来自该节目的主持人蒙提·霍尔(Monty Hall)。 参赛者会看见三扇关闭了的门,其中一扇的后面有一辆汽车,选中后面有车的那扇门可赢得该汽车,另外两扇门后面则各藏有一只山羊。当参赛者选定了一扇门... 阅读全文
posted @ 2019-08-05 22:28 树荫下的天空 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 深入spring IOC+JDK动态代理编写一个http声明式组件 前置知识 JDK动态代理 几个spring接口的使用,包括 //用于获取一些环境相关的数据 org.springframework.context.EnvironmentAware //用于自定义注入bean到容器的回调接口 org.springframework.context.annotation.ImportBea... 阅读全文
posted @ 2019-08-04 21:17 树荫下的天空 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 前言 java对于字符串拼接一般都喜欢用String.format("xx",arg),如下 那么这个简单实用的小功能底层是作何实现呢? 源码 从String.java源码入手,看到内部调用到的其实是 return new Formatter().format(format, args).toString(); 跟进Formatter.java 在java.util.Format... 阅读全文
posted @ 2019-08-03 23:17 树荫下的天空 阅读(2225) 评论(0) 推荐(1) 编辑
摘要: 一、通过返回数组(或集合)实现 @Test public void test1(){ int a = 10,b =7; int[] compute = compute(a,b); System.out.println("两数之和:"+compute[0]); System.out.println("两数之差:"+compu... 阅读全文
posted @ 2019-07-14 10:58 树荫下的天空 阅读(5873) 评论(0) 推荐(0) 编辑
摘要: 线程池介绍在web开发中,服务器需要接受并处理请求,所以会为一个请求来分配一个线程来进行处理。如果每次请求都新创建一个线程的话实现起来非常简便,但是存在一个问题:如果并发的请求数量非常多,但每个线程执行的时间很短,这样就会频繁的创建和销毁线程,如此一来会大大降低系统的效率。可能出现服务器在为每个请求创建新线程和销毁线程上花费的时间和消耗的系统资源要比处理实际的用户请求的时间和资源更多。那么有没有一... 阅读全文
posted @ 2019-05-11 10:19 树荫下的天空 阅读(457) 评论(0) 推荐(1) 编辑
摘要: 前言 同时学习java和python或其他语言的小朋友,肯定发现了一个问题,java实体类有冗长的setter和getter,但是Python就不用,那么造成这个现象的原因是什么呢?为什么java不像Python直接把属性设置为public就完事了? 不能只随波逐流别人写就跟着写要通过现象看本质。 一、面向对象的封装理念 这应该是最多人给你的答案,封装类的内部细节提供对应的方法,有时候可以... 阅读全文
posted @ 2019-05-11 10:17 树荫下的天空 阅读(10641) 评论(0) 推荐(3) 编辑
摘要: 介绍 非常优秀的精简系统,精简处理的非常专业,最大化接近原版系统,绝大部分无用的后台进程和服务都已关闭,使用流畅度很不错!个人认为这个是Win10功能精简做的最好的版本,作者水平非常专业,这个做精简母盘非常完美!亲自测试,流畅度跟俄罗斯大神的差不多! Win10 1703 x64 msdn原盘,全部离线精简,全部为组件方式或者dism命令移除,可以直接打任何升级补丁,不存在过度精简无法更新的问... 阅读全文
posted @ 2019-01-19 10:45 树荫下的天空 阅读(77470) 评论(5) 推荐(2) 编辑
摘要: 浏览器:centbrowser centbrowser是最像google chrome的浏览器。更新速度也非常快基本上内核只慢chrome一个版本。 既然cent是最像chrome的浏览器,何不直接使用chrome呢,这是因为chrome作为一个外来物,有些操作不太符合国人习惯,比如: 在点击书签时,会默认替换掉当前页面,而大多数国内浏览器都是在新标签打开。不敢说谁优谁劣。但后者明显更... 阅读全文
posted @ 2019-01-18 11:20 树荫下的天空 阅读(1401) 评论(0) 推荐(0) 编辑
摘要: 前言 使用官方springboot-starter和第三方脚手架工具hunter-spring-boot-starter, 快速构建项目,在五分钟内即可进行业务开发。 一、使用官方starter快速搭建一个项目 使用IDEA spring initializr 新建一个spring项目 填写一些基本信息 group: 组织,一般是域名倒写 artifact:项目 添加web支... 阅读全文
posted @ 2019-01-18 10:09 树荫下的天空 阅读(2105) 评论(0) 推荐(0) 编辑
摘要: 介绍 意图: 定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。 解决问题: 在有多种算法相似的情况下,使用 if...else 所带来的复杂和难以维护(简而言之消除if分支过多问题) 指导思想 开闭原则、迪米特法则、依赖倒置原则 问题场景 公司有节日活动,为每个员工分发奖金。经理(及以上)发5000,普通员工2000。 不使用策略模式 // 经理... 阅读全文
posted @ 2019-01-18 10:07 树荫下的天空 阅读(925) 评论(0) 推荐(0) 编辑