- 博客(8)
- 收藏
- 关注
原创 float类型的存储形式
通过这篇文章将弄清楚以下几个问题: 1.任意一个小数如何用二进制表示 2.小数在计算机中如何存储 3.float类型的数为什么会有可能存在精度丢失 4.float类型的数的大小范围以及精度 1. 任何一个小数如何用二进制表示 我们先回顾一下一个十进制整数如何转换为二进制,写一个简单的将一个正整数转换为二进制的代码如下: public static String toBinaryString(long n) { StringBuilder s = new StringBui
2022-02-17 17:22:19 1267
原创 排序算法之归并排序
public class MergeSortTest { public static void main(String[] args){ int[] arrs = new int[]{3,5,6,2,4,1,6,8,4,3,0}; mergeSort(arrs,0,arrs.length - 1); System.out.println(A...
2019-04-07 17:25:38 256
原创 记一次JDK1.8HashMap resize()方法线程不安全验证
HashMap线程安全性问题算是老生常谈的问题了,HashMap的线程不安全性主要就体现在resize()方法中了,本文就针对HashMap resize()方法做一些线程安全性的测试,注意JDK版本为1.8,1.7不适用 1.先上JDK1.8 HashMap源代码 final Node<K,V>[] resize() { Node<K,V>[] ol...
2019-01-01 23:52:13 2530
原创 java return与finally执行顺序测试
今天面试一家公司,笔试题目有一道是考察finally块与return的执行顺序,由于以前没去关注,这次又正好遇见,所以做一次记录。 先看代码: public class Test2 { private static int i = 0; public static int finallyTest(){ try{ System.out.println("enter ...
2018-10-31 13:51:42 1658
原创 记一次spring5源码完整编译过程
学习java已有3年之久,spring一直停留在应用阶段,两次面试阿里的经历让我深感学习spring源码的重要性,废话不多说,开搞! 1、环境: jdk1.8+spring5+gradle4.7+eclipse4.6 如果要参考该教程,环境最好一样(eclipse除外),因为以前编译过spring3,由于环境问题折腾了好久 2、检测jdk版本java -version 由于此次编译的...
2018-10-23 22:34:55 24549 12
原创 全面解析ThreadLocal类
考虑有下面的工具类:import java.text.SimpleDateFormat; import java.util.Date; public class DateUnits { private final static SimpleDateFormat sdf = new SimpleDateFormat(FormatType.TYPE1.type); public static...
2018-03-25 22:13:32 265
原创 java I/O之File类:遍历目录树
《Java编程思想》第十八章看到的一个工具类,觉得有些作用,mark一下,主要是对一个指定目录下所有的文件进行遍历,主要代码如下:public class FileUtils { public static File[] local(File dir,final String regex){ return dir.listFiles(new FilenameFilter(){ ...
2018-03-18 20:05:50 359
原创 利用线程池来创建和管理线程
传统的创建线程的方式有两种:继承Thread类和实现Runnable接口,Java SE5的java.util.concurrent包中放入执行器(Executor)将为你管理Thread对象,先来回顾以传统方法创建线程的方式:public class CreateThreadByImplRunnable implements Runnable{ protected int co...
2018-03-11 17:01:10 556
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人