<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[coder_no的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/coder_no</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; coder_no]]></copyright><item><title><![CDATA[float类型的存储形式]]></title><link>https://blog.youkuaiyun.com/coder_no/article/details/122919895</link><guid>https://blog.youkuaiyun.com/coder_no/article/details/122919895</guid><author>coder_no</author><pubDate>Thu, 17 Feb 2022 17:22:19 +0800</pubDate><description><![CDATA[通过这篇文章将弄清楚以下几个问题：

1.任意一个小数如何用二进制表示

2.小数在计算机中如何存储

3.float类型的数为什么会有可能存在精度丢失

4.float类型的数的大小范围以及精度



1. 任何一个小数如何用二进制表示

我们先回顾一下一个十进制整数如何转换为二进制，写一个简单的将一个正整数转换为二进制的代码如下：


public static String toBinaryString(long n) {
        StringBuilder s = new StringBui]]></description><category></category></item><item><title><![CDATA[排序算法之归并排序]]></title><link>https://blog.youkuaiyun.com/coder_no/article/details/89071782</link><guid>https://blog.youkuaiyun.com/coder_no/article/details/89071782</guid><author>coder_no</author><pubDate>Sun, 07 Apr 2019 17:25:38 +0800</pubDate><description><![CDATA[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...]]></description><category></category></item><item><title><![CDATA[记一次JDK1.8HashMap resize()方法线程不安全验证]]></title><link>https://blog.youkuaiyun.com/coder_no/article/details/85567945</link><guid>https://blog.youkuaiyun.com/coder_no/article/details/85567945</guid><author>coder_no</author><pubDate>Tue, 01 Jan 2019 23:52:13 +0800</pubDate><description><![CDATA[HashMap线程安全性问题算是老生常谈的问题了，HashMap的线程不安全性主要就体现在resize()方法中了，本文就针对HashMap resize()方法做一些线程安全性的测试，注意JDK版本为1.8，1.7不适用

1.先上JDK1.8 HashMap源代码


final Node&lt;K,V&gt;[] resize() {
        Node&lt;K,V&gt;[] ol...]]></description><category></category></item><item><title><![CDATA[java return与finally执行顺序测试]]></title><link>https://blog.youkuaiyun.com/coder_no/article/details/83581442</link><guid>https://blog.youkuaiyun.com/coder_no/article/details/83581442</guid><author>coder_no</author><pubDate>Wed, 31 Oct 2018 13:51:42 +0800</pubDate><description><![CDATA[       今天面试一家公司，笔试题目有一道是考察finally块与return的执行顺序，由于以前没去关注，这次又正好遇见，所以做一次记录。

先看代码：


public class Test2 {
	private static int i = 0;
	public static int finallyTest(){
		try{
			System.out.println(&quot;enter ...]]></description><category></category></item><item><title><![CDATA[记一次spring5源码完整编译过程]]></title><link>https://blog.youkuaiyun.com/coder_no/article/details/83315981</link><guid>https://blog.youkuaiyun.com/coder_no/article/details/83315981</guid><author>coder_no</author><pubDate>Tue, 23 Oct 2018 22:34:55 +0800</pubDate><description><![CDATA[学习java已有3年之久，spring一直停留在应用阶段，两次面试阿里的经历让我深感学习spring源码的重要性，废话不多说，开搞！

1、环境：

jdk1.8+spring5+gradle4.7+eclipse4.6

如果要参考该教程，环境最好一样（eclipse除外），因为以前编译过spring3，由于环境问题折腾了好久

2、检测jdk版本java -version



由于此次编译的...]]></description><category></category></item><item><title><![CDATA[全面解析ThreadLocal类]]></title><link>https://blog.youkuaiyun.com/coder_no/article/details/79689672</link><guid>https://blog.youkuaiyun.com/coder_no/article/details/79689672</guid><author>coder_no</author><pubDate>Sun, 25 Mar 2018 22:13:32 +0800</pubDate><description><![CDATA[考虑有下面的工具类：import java.text.SimpleDateFormat;
import java.util.Date;

public class DateUnits {
	private final static SimpleDateFormat sdf = new SimpleDateFormat(FormatType.TYPE1.type);
	
	public static...]]></description><category></category></item><item><title><![CDATA[java I/O之File类:遍历目录树]]></title><link>https://blog.youkuaiyun.com/coder_no/article/details/79603734</link><guid>https://blog.youkuaiyun.com/coder_no/article/details/79603734</guid><author>coder_no</author><pubDate>Sun, 18 Mar 2018 20:05:50 +0800</pubDate><description><![CDATA[     《Java编程思想》第十八章看到的一个工具类，觉得有些作用，mark一下，主要是对一个指定目录下所有的文件进行遍历，主要代码如下：public class FileUtils {
	public static File[] local(File dir,final String regex){
		return dir.listFiles(new FilenameFilter(){
		...]]></description><category></category></item><item><title><![CDATA[利用线程池来创建和管理线程]]></title><link>https://blog.youkuaiyun.com/coder_no/article/details/79515494</link><guid>https://blog.youkuaiyun.com/coder_no/article/details/79515494</guid><author>coder_no</author><pubDate>Sun, 11 Mar 2018 17:01:10 +0800</pubDate><description><![CDATA[        传统的创建线程的方式有两种：继承Thread类和实现Runnable接口，Java SE5的java.util.concurrent包中放入执行器(Executor)将为你管理Thread对象，先来回顾以传统方法创建线程的方式：public class CreateThreadByImplRunnable implements Runnable{
	protected int co...]]></description><category></category></item></channel></rss>