java
文章平均质量分 75
尼古拉斯--黑子
学海无涯
展开
-
Guava
一 非空Optional:创建Optional实例(以下都是静态方法):Optional.of(T)创建指定引用的Optional实例,若引用为null则快速失败Optional.absent()创建引用缺失的Optional实例Optional.fromNullable(T)创建指定引用的Optional实例,若引用为null则表示原创 2017-06-30 14:18:41 · 193 阅读 · 0 评论 -
Stream
1.将数据源(集合,数组等)经过一些列流水线式的中间操作产生一个新stream,而对数据源不会改变。2.stream是懒加载的,它本身不会存储数据,也不会改变数据源,且支持短路原则来提高效率3.stream操作就三个步骤:生成stream-->中间操作-->产生结果详解参见1.创建:1)通过collection系列集合(list,set)提供的stream()为集合创建串行流/parallelSt原创 2017-08-08 22:00:34 · 364 阅读 · 0 评论 -
知识导航
定时任务:https://www.ibm.com/developerworks/cn/java/j-lo-taskschedule/设计模式:http://www.yiibai.com/design_pattern/abstract_factory_pattern.htmlRedisson: https://github.com/redisson/redisson/wiki/Redisso转载 2017-06-28 14:08:48 · 287 阅读 · 0 评论 -
Serialization
序列化:序列化的作用: 类实现Serializable接口的目的是为了可持久化,比如网络传输或本地存储,为系统的分布和异构部署提供先决支持条件。若没有序列化,现在我们熟悉的远程调用、对象数据库都不可能存在,实现了Serializable接口,可以在网络上传输,也可以本地存储然后读取序列化的过程: 序列化: 通过对象序列化过程,把一个对象从内存块转化为数据流通过网络传输或者本地存储 反序列化:原创 2017-12-21 15:37:41 · 374 阅读 · 0 评论 -
一丶线程的同步
何为线程安全:当多个线程访问某一个类,该类都能表现出一个正确的行为,即为线程安全。等待通知模型:线程间协作:wait、notify、notifyAll简易线程池的实现:Quartz_SimpleThreadPoolsynchronized是Java中的关键字,是一种同步锁。使用场景有以下几种: 1. 修饰一个代码块,被修饰的代码块称为同步语句块,其作用的范围是大括号{}括起来的代码,作用的对象是调...原创 2017-08-09 11:12:47 · 298 阅读 · 0 评论 -
Guava
guava类库中的Throwables提供了一些异常处理的静态方法,这些方法的从功能上分为两类,一类是帮你抛出异常,另外一类是帮你处理异常。也许你会想:为什么要帮我们处理异常呢?我们自己不会抛出异常吗?假定下面的方法是我们要调用的方法。 public void doSomething() throws Throwable { //ignore method bod原创 2017-07-14 14:41:02 · 183 阅读 · 0 评论 -
二进制
二进制基本概念: java中 int 4个字节,32位,无论在IBM还是惠普的机器上都是4个字节。转换成二进制是32个0或1。对于有符号位(java中都是有符号位的)而言:二进制的最高位即第一位是符号位:0代表正数,1代表负数;正数的原码,反码,补码都一样;负数的反码 = 原码符号位不变,其他位取反;负数的补码 = 反码 + 1;0的反码和补码都是0;计算机都是以补码的方式来计算的原创 2017-11-20 21:16:14 · 452 阅读 · 0 评论 -
你真的了解Java吗?
三目运算符规则: • 如果第二个和第三个操作数具有相同的类型,那么它就是条件表达式的类 型。换句话说,你可以通过绕过混合类型的计算来避免大麻烦。 • 如果一个操作数的类型是 T,T 表示 byte、short 或 char,而另一个操作数是一个 int 类型的常量表达式,它的值是可以用类型 T 表示的,那么条件表达式的类型就是 T。 • 否则,将对操作数类型运用二进制数字提升,而条件表达式的原创 2017-11-28 17:25:52 · 385 阅读 · 0 评论 -
java基础
1.hashCode和equals详解:参见2.集合初始化时,指定集合初始值大小。 说明:HashMap 使用 HashMap(int initialCapacity) 初始化, 正例:initialCapacity = (需要存储的元素个数 / 负载因子) + 1。 注意: 负载因子(即 loader factor)默认为 0.75, 如果暂时无法确定初始值大小,请设置为 16(即原创 2017-11-10 17:39:50 · 266 阅读 · 0 评论 -
多线程-线程同步
何为线程安全: 当多个线程访问某一个类,该类都能表现出一个正确的行为,即为线程安全。 等待通知模型:wait、notify、notifyAll 线程阻塞/唤醒:LockSupport 等待(java语言级)和阻塞(操作系统级)的区别: 等待:需要在同步块或者同步方法中进行调用, 会释放锁, 并进入锁对象的等待队列(等待池), 等到其他线程调用notify方法释放锁后(锁池)重新竞争锁。 ...原创 2018-01-17 09:54:57 · 160 阅读 · 0 评论