自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用stream流简化对集合的操作

使用stream流筛选集合中的数据使用传统的方式来筛选集合中的元素,我们可以想象到的方式就是遍历集合,将符合条件的元素存入一个新的集合中,或者将不符合的元素从集合中剔除。可是如果一旦筛选条件不止一个的时候,就会发现这种处理方式很繁琐,所以这个时候可以考虑使用jdk8的新特性,流式操作,再配合上lambda表达式和函数引用来简化代码的书写常用方法终结方法:返回值类型不再是Stream接口自身类型的方法,因此不再支持链式调用forEach 逐一处理count 统计流中元素个数延迟方法:返

2020-07-07 18:36:57 1046

原创 如何快速使用NIO复制文件

使用NIO复制文件利用NIO中的Channel(通道)这一特性实现对文件快速复制情况一:如果文件大小在2GB以下这个时候可以使用MappedByteBuffer直接把文件映射到内存中,在内存中实现复制,然后再映射到目的地,这样就可以将硬盘的读写转移到了内存中的读写,提高读写效率public static void main(String[] args) throws Exception{ //java.io.RandomAccessFile类,可以设置读、写模式的IO流类。

2020-07-04 16:19:48 1900

原创 多线程6中状态间的转换

Java多线程6种状态的转换NEW(新建) 创建线程对象时Runnable(可运行) 线程可以在Java虚拟机上运行的状态,可能是正在运行,也可能是在等待CPU资源,简单来说就是调用了start方法Blocked(锁阻塞) 当线程要获取一个对象锁,但是这个对象锁正在被其他线程占用,则该线程进入阻塞状态;当该线程获取到对象锁时就会变成可运行状态Waiting(无限等待) 线程调用wait()方法,进入Waiting状态,在这个状态下,线程是不能自动醒来的,只能等待另一个线程调用notify

2020-07-04 15:49:01 4401

原创 关于二分查找算法中中间值的获取

关于二分查找算法中中间值的获取//left是左边元素索引的变量,right是右边元素索引的变量int mid = (left + right) / 2;//这样写的话可能会出现问题,当数组中的元素个数接近int可存储的最大值,//第一次查发现目标值大于中间索引所对应的值,则证明目标值在数组的右侧,left=mid+1;//这个时候left+right的值会超过int的范围,就会变成一个不是期望的值//所以建议使用int mid = left + (right - left) / 2;..

2020-06-19 23:02:21 3935

空空如也

空空如也

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

TA关注的人

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