自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 compare根据中文多字段排序

方法一:// 中文比较器Collator instance = Collator.getInstance(Locale.CHINA);//一步完成 略微有点绕Collections.sort(list, (o1,o2)-> instance.compare(o1.getName(),o2.getName()) < 0 ? 1 : o1.getHight().compareTo(o2.getHight()));方法二:// 中文比较器Collator i

2020-12-11 10:04:33 532

原创 对象转json,日期格式化并且保留null字段

JSONObject.parseObject(JSONObject.toJSONString(resultObject, SerializerFeature.WriteMapNullValue).replaceAll(“null”," \"\" "))

2020-11-17 17:19:29 466

原创 git初始化本地代码到仓库

问题产生:正常通过公司git下来的代码 只需要在idea上进行pull 和 push操作就行了,也没进行过其他的git学习,后来在家的时候发现想要看一下自己在公司学习的demo并进行修改很麻烦,所以想把自己的本地代码也提交到git上,方便随处查看和修改学习第一步:git都没装的建议直接打开wegame 点击英雄联盟 开始游戏。 装了git的铁汁们,到要初始化的项目中要进到项目那个文件夹中,右键打开Git Bash here。第二步:输入 git init,主要用来初始化一个空的git本地仓库。执行完上面

2020-09-28 16:43:10 548

原创 生产者消费者ReentrantLock+Condition的传统实现demo

/** * @ClassName ProdConsumer_TraditionDemo * @Description 模拟生产者消费者模式 * * 让两个线程对一个初始变量0,一个加1一个减1 模拟生产者消费者 * * 1 线程 操作 资源类 * 2 判断 干活 通知 * 3 防止虚假唤醒机制 **/// 资源类class ShareData{ private int number = 0; private Lock lock = new Reentr

2020-07-21 16:08:56 183

原创 阻塞队列SynchronousQueue案例演示

/** * @ClassName SynchronousQueueDemo * @Description 阻塞队列SynchronousQueue演示 * * 不存储元素的阻塞队列,即单个元素的队列,只有一个元素被take了才能put另一个元素 **/public class SynchronousQueueDemo { public static void main(String[] args) { BlockingQueue<String> blockin

2020-07-17 15:44:36 126

原创 CountDownLatch,CyclicBarrier,Semaphore案例学习

/** * @ClassName CountDownLatchDemo * @Description CountDownLatch * * 让一些线程阻塞直到另一些线程完成一系列方法之后才被唤醒 * CountDownLatch有两个主要方法 线程调用await方法会导致阻塞直到别的线程调用countDown的过程中 CountDownLatch的count为0 **/public class CountDownLatchDemo { public static void main(S

2020-07-16 16:26:29 124

原创 可重入不可重入锁,自旋锁,独占锁(写锁),共享锁(读锁),互斥锁,学习案例

可重入不可重入锁public class ReenterLockDemo { public static void main(String[] args) { Phone phone = new Phone(); ExecutorService executorService = Executors.newFixedThreadPool(2);// for(int i =0; i < 100; i++){// execu

2020-07-16 13:57:48 283

原创 单例模式学习

前言在java中,单例模式应该是大家较为熟悉的设计模式了,但其实,并不是所有的java开发人员都能写出安全高效的单例模式,由于自己理解也不是很深刻,所以以下算是本人学习的一段经历吧~~下面分享一下我学习单例模式的历程。什么是单例?维基百科上对单例的定义:单例对象的类必须保证只有一个实例存在解读一下这句话,其实单例模式的所有代码都是为了让程序能够更高效安全的获得这个类的唯一实例化对象,那么...

2020-04-10 11:31:04 229

原创 初识JVM

观看网易云课堂视频后的总结:JVM的运行时数据区,分为线程共享部分和线程独占部分。在jvm中,方法区保存了类的信息,提供了外界访问类时所需要的接口。可以理解为 局部变量都保存在堆中,成员变量都保存在栈中,静态变量保存在方法区。堆内存:gc回收:GC Roots其实就是难以被回收的对象,因为方法中的静态属性作为类的信息保存在方法区,回收条件比较苛刻,所以可以作为可达性分析算法的G...

2020-02-23 14:24:59 98

原创 IO和NIO

Java世界中的两类IO:IO(性能瓶颈)和NIO以及jdk1.7中要加入的增强版NIO•IO:面向流的方式处理数据(单个的字节,字符的移动,流的一次操作一次只能产生或者消费一个字节或者字符即使有缓冲,也需要程序员自己填充和提取缓冲区内容)•NIO:面向块的方式处理数据(数据块的移动,一次操作产生或者消费一个数据块,将最耗时的 I/O 操作–填充和提取缓冲区内容操作转移回操作系统NIO的特点...

2020-02-23 13:46:57 108

转载 MongoDB学习

MongoDB的基础服务搭建和robo3T的使用搭建基础的mongodb服务,https://blog.csdn.net/qq_33206732/article/details/79819541下载对应msi文件,进行安装,完成后,进入安装目录建立 data和log文件夹,以及后缀为conf的文件,log文件夹中建立log文件Conf的配置如下#数据库路径...

2020-02-23 13:45:21 86

原创 记录一题简单的数字反转题

给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为[−231,231− 1]。请根据这个假设,如果反转后整数溢出那么就返回 0来源:力扣(Leet...

2020-02-23 13:44:36 184 1

原创 springboot项目打成jar包

webapp的内容被我扔到resources中 不然不会被打包到项目中这样可能会读取不到webapp中的内容在application.properties中添加spring.resources.static-locations=classpath:/webapp/然后pom文件中如果不行的话 pom文件中再加入<plugin> <groupId>o...

2020-01-08 15:43:54 104

转载 微服务学习

https://www.jianshu.com/p/0a3e959ecb81

2019-09-27 10:05:37 64

原创 BlockingQueue记录取出和添加的方法和各自的区别

从队列中取出元素peek :获取队列头部元素,但不移除,若队列为空则返回null。element:获取队列头部元素,但不移除,若队列为空则会抛出异常 java.util.NoSuchElementException。take :获取队列头部元素并移除,若队列为空,则堵塞。poll :获取队列头部元素并移除,若队列为空则返回null。往队列中添加元素put ...

2019-09-20 10:52:52 507

原创 多线程实现数组求和

多线程实现数组求和多线程学习方法1 修改传入线程的数组引用的值,完成后循环累加数组。public class SumNumber implements Runnable{ private int[] sum; private int formInt; private int intoInt; private int threadNo; public...

2019-09-19 19:59:57 1834

转载 Redis: 缓存过期、缓存雪崩、缓存穿透、缓存击穿(热点)、缓存并发(热点)、多级缓存、布隆过滤器

保存学习一下。

2019-09-12 09:59:15 135

原创 static{}和普通{}的记录

static{}中的内容会在类加载的时候被调用,{}会在类被创建的时候被调用。加载的时候先加载父类,再加载子类,顺序 父类static{}>子类static{} > 父类{} > 子类{} > 父类构造方法> 子类构造方法。...

2019-09-12 09:30:23 173

原创 JAVA调用方法传String的问题

今天看到个面试题,突然想到java调用方法传的的String 是个类,但是修改后原来的值确不会改变,像这样----public class Example{ String str = new String("good"); char[] ch = {'a','b','c'}; public static void main(String[] args){ ...

2019-09-12 09:11:17 404

空空如也

空空如也

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

TA关注的人

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