![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
文章平均质量分 63
菅亚康
这个作者很懒,什么都没留下…
展开
-
Java String 占位符
String stringFormat = "lexical error at position %s, encountered %s, expected %s "; String messageFormat ="lexical error at position {0}, encountered {1}, expected {2}"; System.out.println(String.format(stringFormat, 1, 2, 3));原创 2021-12-28 14:49:05 · 1648 阅读 · 0 评论 -
jvisualvm.exe 查看jvm堆栈内存 线程堵塞
jvisualvm.exe 查看jvm堆栈内存一、打开jvisualvm二、找到自己的项目三、查看jvm堆内存四、查看线程堵塞一、打开jvisualvm找到jdk/bin目录 双击运行jvisualvm.exe二、找到自己的项目右击打开三、查看jvm堆内存堆Dump 是堆的记录 点击会生成当前时间的Dump记录四、查看线程堵塞这个是可视化的下图片中的右下角是颜色对应的信息点击线程Dump 会生成线程堵塞信息java.lang.Thread.State 后面对原创 2021-07-08 16:43:06 · 2129 阅读 · 0 评论 -
java集合篇-List
java集合篇-ListArrayList一、介绍:二、注意点ArrayList一、介绍:ArrayList 基于数组实现,无容量限制,非线程安全。在执行插入元素时可能要扩容,在删除源数时并不会减小数据在容量。二、注意点(1)ArrayList遍历比较快,随机存取元素时间复杂度O(1),插入删除操作效率低 因为需要大量移动元素。(2)为节省内存,当新容器为空时,会共享...原创 2021-07-07 14:05:34 · 69 阅读 · 0 评论 -
线程间通信的几种实现方式
线程间通信的几种实现方式线程间通信方式一:使用 volatile 关键字方式二:使用Object类的wait() 和 notify() 方法使用JUC工具类 CountDownLatch方式四 使用 ReentrantLock 结合 Condition基本LockSupport实现线程间的阻塞和唤醒线程间通信首先,要短信线程间通信的模型有两种:共享内存和消息传递,以下方式都是基本这两种模型来实现的。方式一:使用 volatile 关键字基于 volatile 关键字来实现线程间相互通信是使用共转载 2021-07-06 11:25:40 · 340 阅读 · 0 评论