自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(68)
  • 资源 (1)
  • 收藏
  • 关注

原创 1-6概率质量函数和概率密度函数

2023-12-07 07:06:35 392

原创 1-5总体分布的推断

2023-12-07 07:01:21 387

原创 1-4描述统计基础

2023-12-07 06:58:24 370

原创 统计学基础至1-3

2023-12-05 07:08:07 387

原创 动手学统计学目录

2023-12-05 07:00:38 427

原创 01. Linux kernel 编译,qemu仿真

【代码】【无标题】

2023-11-20 07:10:11 331

原创 Java使异步变同步的方法

使用CountDownLatch,在获取结果时使用await方法,在设置结果的时候使用countDown方法。这样就可保证获取方法阻塞住,直到结果被计算出来。使用futureTask加上executor进行异步任务...

2019-11-23 12:26:44 510

原创 ConstraintLayout 中left and start的区别

https://stackoverflow.com/questions/14904273/what-is-the-difference-between-android-margin-start-end-and-right-leftAndroid有LTR和RTL两种布局方式,在LTR中 left = start,在RTL中 right = start如果在布局的时候需要适配不同的国家,以下有个参...

2019-08-26 17:25:41 1875

原创 Java并发包-CyclicBarrier

Cyclic用于线程之间的同步,形象化一点就是说,大家都到达了再继续运行,相对于CountDownLatch来说,它可以被重用,因为在await到达之后,count会被自动重新初始化。CyclicBarrier中有两个方法需要注意:await用于使所有的线程同步到一个点上进行等待,如果要进行下一步,所有的线程一定是在程序中的某一点都在等待,而CountDownLatch就不能保证在同一...

2019-08-11 23:00:44 143

原创 英语--手的单词

fingerthumbindex fingermiddle fingerlittle fingerring fingerpalmback of handwristfistknuckle

2019-08-11 12:16:34 322

原创 Java并发之对于CountDownLatch的理解?

学习一个东西,一定要高搞清楚使用的场景,并总结最佳实践。CountDownLatch 是Java并发包中的一个同步助手类,用于协调多个线程之间的协作。当初始化的参数为1的时候可以作为一个开关latch,但是注意,这个开关可以开启多个线程,或者是只开启一个线程。latch.await()在多个线程中,先暂停等待。latch.countDown()在一个线程中等待时机调用,之后所有等待的其他...

2019-08-10 23:00:17 136

原创 Queue和Deque的区别?

Queue是队列,Deque是双端队列。public interface Deque<E> extends Queue<E> {方法上的区别如下:QueueDequeaddaddFirstofferofferFirstremoveremoveFirstpollpollFirstelementgetFirst...

2019-08-10 22:07:39 6857

原创 Java并发包中的CopyOnWriteXXXX集合特点

下面以CopyOnWriteArrayList为例子来说明CopyOnWrite集合的特点:A thread-safe variant of java.util.ArrayList in which all mutative operations (add, set, and so on) are implemented by making a fresh copy of the underly...

2019-08-10 21:51:07 127

原创 Java并发包中的并发集合 vs 同步集合

java并发包中的并发集合与sychronized collection的不同之处在于:并发包中的集合是线程安全的,但是不是通过一个互斥锁即synchronized来实现线程安全的,这使得他们比synchronized 集合更加高效。并发包中的集合通过定义happens-before机制很好的实现线程安全。Happens-before就是一个代码块中的写操作对于后续代码块中的读,写,删除是...

2019-08-10 21:31:14 291

原创 Java中的同步集合

List list = Collections.synchronizedList(new ArrayList(...));synchronized(list){ Iterator itr = list.iterator(); while(itr.hasNex()){ …… }}以上是Java中同步集合的使用,同步集合的缺点很明显,就是不高效。具体看实现我们发现只是用装饰者模式...

2019-08-10 16:31:10 467

原创 在Java集合中什么是结构性的修改?

原文出处(ArrayList的实现文档中)结构性的改变是一种操作:添加,删除一个或者多个元素,或者明显的重新调整所背后的数组的大小;仅仅修改元素的内容并不叫结构性修改结构性的改变通常通过一些线程安全的对象来完成,这些对象对线程安全的集合进行了包装,使结构性改变的方法变得线程安全(用锁的方式或者其他方式)。Note that this implementation is not synchro...

2019-08-10 16:24:12 608

原创 Java并发包--什么Guard-suspend Pattern?

看门见山,下面就是经典的Guard-Suspend Partern模式的代码:while(condition is not satisfied){ obj.wait()}Guard-suspend模式常用于线程之间的同步,使用这种方式可以防止循环检测,线程可以被动唤醒,唤醒之后还可以再次检查suspend的条件,防止条件失效。...

2019-08-08 20:15:30 195

原创 Java并法包--ConditionObject?

什么是ConditionObject?ConditionObject是java.util.concurrent.lock包中的类,它的出现是Java中的并发编 程变得更加高效。以下为方便简称ConditionObject为CO。在使用java内置的sychronized关键字来同步的时候我们会使用wait和notify方法,这个与CO的底层实现是一致的,只是没有暴漏在Java层。简单的说CO...

2019-08-08 20:10:10 223

原创 Java并发包--fork/join--RecursiveTask

以下是使用RecursiveTask解决计算斐波那契数的程序。 class Fibonacci extends RecursiveTask<Integer> { final int n; Fibonacci(int n) { this.n = n; } Integer compute() { if (n <= 1) return n;...

2019-08-06 23:01:39 242

原创 Java并发包---forkjoin-RecursiveAction

RecursiveAction继承自ForkJoinTask,代表一个异步执行的结果,是没有返回值的任务。而RecursiveTask是有返回值的任务,这两个共同组成ForkJoin框架的任务。一个简单的例子以下是java API中给出的RecursiveAction的例子,将给定数组的每个元素都自增:public class IncrementTask extends Recursive...

2019-08-06 22:50:02 673

原创 Java并法包--Future,FutureTask,Callable,Executors

因为这几个类比较简单,所以简单进行文字陈述。Future:A Future represents the result of an asynchronous computation. Methods are provided to check if the computation is complete, to wait for its completion, and to retrieve t...

2019-08-05 22:53:31 97

原创 什么是CheckedException?

The class Exception and its subclasses are a form of Throwable that indicates conditions that a reasonable application might want to catch.The class Exception and any subclasses that are not also sub...

2019-08-05 21:59:04 1309

原创 Java基础---为什么我们需要并发集合?

As we already know Collections which is nothing but collections of Objects where we deals with the Objects using some pre-defined methods. But There are several problems which occurs when we use Colle...

2019-08-05 20:14:39 123

原创 Java基础算法系列--数据结构---数组

数组的结构特点在内存中连续存储,访问时间复杂度为O(1),插入和删除都需要移动前后元素,时间复杂度为O(n)直接利用数组的排序算法冒泡排序 private static void bubbleSort(int[] nums,int len) { int i,j; for (i = len-1; i>0 ; i--) { ...

2019-08-05 19:22:01 77

原创 Java集合系列

Java中的线程安全的集合Vector(可自动增长的array):线程安全版的ArrayListHashTable:线程安全版的HashMapStack:继承自Vector,因此也是线程安全的如何线程安全的访问集合?什么是fail-fast机制? * <p>The iterators returned by the {@code iterator} meth...

2019-08-05 16:22:07 124

原创 一图详解所有HTTP状态码

此svg清晰的描述了HTTP请求返回的状态码。SVG是什么呢?SVG 是一种基于 XML 语法的图像格式,全称是可缩放矢量图(Scalable Vector Graphics)。其他图像格式都是基于像素处理的,SVG 则是属于对图像的形状描述,所以它本质上是文本文件,体积较小,且不管放大多少倍都不会失真。此外还可以针对svg进行文本的搜索,想想我们是不是可以用来进行基于内容的图片搜索了呢?...

2019-06-07 11:32:19 655

原创 什么是HTTP HOST

分享好的链接,让有价值的东西发光!这篇博客很好的解释了HOST的作用。但是在读的过程中还是要进行验证,从技术的源头看看它的本意是什么。可以看看维基和协议本身的解释,顺便考验一下你的英文能力。...

2019-06-07 11:11:02 4525

原创 设计模式之简单工厂模式

2019-05-28 15:08:22 96

原创 如何看UML类之间的关系

2019-05-28 14:51:14 152

原创 Python3-BeautifulSoup4

2019-05-28 10:11:38 331

原创 Java工程无法找到AnnotationProcessor产生的文件

解决办法:根build.gradle文件里面加入代码将产生的文件加入sourceset。plugins{ id "java" apply(true) id "net.ltgt.apt" version "0.21"}group 'com.lucien'version '1.0'sourceCompatibility = 1.8repositories { ...

2019-05-27 13:48:52 1596

原创 Gradle中的api和implementation的区别

api 和 implementaion主要是解决多个module依赖时的重复编译问题。设想我们有如下的结构app -> lib1 -> lib2即app依赖于lib1,而lib1 则依赖于lib2.如果我们在app的gradle的依赖中加入api lib1 or implementation lib1而在lib1中使用api lib2那么如果lib2有了改变,则会导致a...

2019-05-27 06:32:04 5674

原创 如何在Gradle中建立lib工程

直接给出图示:建立gradle工程之后,声明plugin是java-library,在gradle任务栏运行build 或者jar任务就可以得到输出的jar文件,jar文件命名会以我们在创建工程时的artificts名称和build.gradle中的version来命名。...

2019-05-26 20:01:55 795 1

原创 架构研究列表

Android中的十大框架解析;Redis中的订阅机制;未完待续。

2019-05-26 12:46:41 170

原创 将Redis加入JavaFx中来存储数据

在上一节中,我们认识了Redis。在这一节中,我们将Redis的加入到JavaFx中为以后会用到的数据库功能做准备。我用单例模式对数据库的操作类进行了一次封装。代码如下:/** * <pre> * author : Lucien Z * e-mail : [email protected] * time : 2019/04/15 * d...

2019-05-26 12:29:40 513

原创 Redis的特点

在上一节,用JavaFX简单的搭建了一个应用,这一节我们引入Redis数据库。首先在使用之前,要对redis数据库有大致的了解,方便以后进行深入研究。所以Redis最大的特点就是高效,功能丰富。下一节我们将Redis引入之前的demo程序中,加上数据库的功能。...

2019-05-26 11:40:13 222

原创 一个完整的JavaFx应用例子

在Java的官方文档中可以看到是推荐使用Scene Builder的。这说明用sencebuilder来进行布局的构建是很有效率的。从这里,我们可以直接下载SceneBuilder。这里是如何关联SceneBuilder和IDEA开发环境。具体如何使用请查看相关文档,有具体的使用方法。在配置完以后,就可以使用了,因为是可见的拖拽方式,所以布局很方便。这里需要注意的是,我们一定要参考官方...

2019-05-26 10:06:20 9955

原创 学习Java FX 你需要掌握那些方面?

在上一节我决定要学习并系统整理JavaFX 相关的知识。学习JavaFX 正确的思路是什么呢?我们先来进行一个抽象,什么是JavaFX?实际上就是一组UI布局空间集合而已,那如何学习呢?根据我多年Android app开发经验,只要是关于UI,我们必须要掌握的有:JavaFx 教程Java8Doc文档...

2019-05-26 09:47:01 371

原创 从Java FX开始打造创新力!

JavaFx是个什么?不就是一个很老的Java的GUI编程组件吗,这东西还有人用吗?如果你这样认为的话,你没有领悟技术的本质,技术的本质在于实用,这才是它的价值所在。我来告诉你我为什么要学习Java FX。做为一个程序员,经常写一些工具可以帮助自己提高工作效率,罗振宇说过"每一个工具的出现都会将人分为两类", 这句话乍一看是句废话,但是分成两类人之后,工作的效率就会产生剧烈的变化。工作效...

2019-05-25 13:43:11 538

原创 你有创造的能力吗?

程序员——一个富有创造力的职业!最让人有成就感的事情莫过于创造,因为只要你创造就可以影响和改变别人,可以是一个人,可以是一个群体,当然也可以是自己。有人说过,最幸福的事情莫过于享受着当下,也奋斗着未来!这幸福感无关乎金钱。程序员这样的职业相对于其他的工作来说创新性很高。对这份工作的感受取决于你是被动的工作还是主动的创造优化和变得更好。为什么有的人做了很长时间的程序员,却感觉迷茫和困惑,似...

2019-05-25 13:25:02 146

java nio 中文版

一个用于讲解java nio的十分实用的一个教程,希望对广大开发者能有多帮助

2015-06-14

空空如也

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

TA关注的人

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