<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[zhangsf666的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/zhangsf666</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; zhangsf666]]></copyright><item><title><![CDATA[CollectionUtils和StringUtils]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103914309</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103914309</guid><author>zhangsf666</author><pubDate>Thu, 09 Jan 2020 19:16:25 +0800</pubDate><description><![CDATA[1.集合判空
org.apache.commons.collections.CollectionUtils  集合判断是否非空
org.springframework.util.CollectionUtils  集合判断是否非空
两者都可以用isEmpty方法判断集合是否为空，apache下的包更倾向于对集合内容的操作，spring下的包更适合查询

2.判断字符串非空，可以用
org.spri...]]></description><category></category></item><item><title><![CDATA[SpringBoot整合Scheduled(定时任务器)]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103435186</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103435186</guid><author>zhangsf666</author><pubDate>Sat, 07 Dec 2019 14:26:13 +0800</pubDate><description><![CDATA[Scheduled 定时任务器：是Spring3.0以后自带的一个定时任务器。我们来看下在SpringBoot中我们怎么使用


一、项目使用

1.创建项目添加依赖

创建一个SpringBoot项目，并添加如下依赖


&lt;dependencies&gt; &lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/...]]></description><category></category></item><item><title><![CDATA[StringBuilder]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103435112</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103435112</guid><author>zhangsf666</author><pubDate>Sat, 07 Dec 2019 14:22:53 +0800</pubDate><description><![CDATA[StringBuilder线程不安全？



在分析这个问题之前我们要知道StringBuilder和StringBuffer的内部实现跟String类一样，都是通过一个char数组存储字符串的，不同的是String类里面的char数组是final修饰的，是不可变的，而StringBuilder和StringBuffer的char数组是可变的。

首先通过一段代码去看一下多线程操作StringB...]]></description><category></category></item><item><title><![CDATA[【Java】双等号和equals的区别]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103435070</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103435070</guid><author>zhangsf666</author><pubDate>Sat, 07 Dec 2019 14:17:17 +0800</pubDate><description><![CDATA[【string的valueof方法，对八种数据类型的自动拆箱装箱，integer-128-+127用==比较integer的值会相等，
因为储存了这个范围内的数据，可以直接进行比较，不在这个范围会new出一个integer，==比较的内容加地址，
equals比较的是地址(未重写之前)，String integer data都重写了equals方法，https://www.jianshu.com/...]]></description><category></category></item><item><title><![CDATA[IDEA配置优化，idea配置大全]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103213514</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103213514</guid><author>zhangsf666</author><pubDate>Sat, 23 Nov 2019 14:00:10 +0800</pubDate><description><![CDATA[IDEA 配置优化32招







1、设置 Maven


1.在File-&gt;settings-&gt;搜索maven

2.Mavanhome directory--设置maven安装包的bin文件夹所在的位置

3.Usersettings file--设置setting文件所在的位置

4.Localrepository--设置本地仓库


2、IDEA 设置代码行宽...]]></description><category></category></item><item><title><![CDATA[navicat premium 12]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/87987229</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/87987229</guid><author>zhangsf666</author><pubDate>Sat, 23 Nov 2019 13:02:43 +0800</pubDate><description><![CDATA[链接：https://pan.baidu.com/s/1rRIYnKoj2-54jLs8Uxlz1g
提取码：4g2j

]]></description><category></category></item><item><title><![CDATA[LocalDateTime  Date区别？  LocalDateTime和Date]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103213022</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103213022</guid><author>zhangsf666</author><pubDate>Sat, 23 Nov 2019 13:01:49 +0800</pubDate><description><![CDATA[LocalDateTime和Date

本篇文章你将了解到：


	为什么需要LocalDate、LocalTime、LocalDateTime【java8新提供的类】
	
	
	java8新的时间API的使用方式，包括创建、格式化、解析、计算、修改
	
为什么需要LocalDate、LocalTime、LocalDateTime


	Date如果不格式化，打印出的日期可读性差

	
Tue...]]></description><category></category></item><item><title><![CDATA[让线程顺序执行]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103212341</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103212341</guid><author>zhangsf666</author><pubDate>Sat, 23 Nov 2019 11:43:57 +0800</pubDate><description><![CDATA[控制线程执行顺序





一、实现

本文使用了8种方法实现在多线程中让线程按顺序运行的方法，涉及到多线程中许多常用的方法，不止为了知道如何让线程按顺序运行，更是让读者对多线程的使用有更深刻的了解。使用的方法如下:


[1] 使用线程的join方法

[2] 使用主线程的join方法

[3] 使用线程的wait方法

[4] 使用线程的线程池方法

[5] 使用线程的Condition(...]]></description><category></category></item><item><title><![CDATA[isEmpty 和 isBlank 区别？]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103189834</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103189834</guid><author>zhangsf666</author><pubDate>Thu, 21 Nov 2019 20:03:47 +0800</pubDate><description><![CDATA[是否注意过isEmpty 和 isBlank 区别？



org.apache.commons.lang.StringUtils 类提供了 String 的常用操作,最为常用的判空有如下两种 isEmpty(String str) 和 isBlank(String str)。

分析

我们通过源码来分析区别：


public static boolean isEmpty(String st...]]></description><category></category></item><item><title><![CDATA[lambda详解]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103183320</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103183320</guid><author>zhangsf666</author><pubDate>Thu, 21 Nov 2019 15:24:47 +0800</pubDate><description><![CDATA[Lambda实操 别再问我什么是Lambda

详细请看个人笔记 Lambda实操







一、引言

Java8 最大的特性就是引入 Lambda 表达式，即函数式编程，可以将行为进行传递。总结就是：使用不可变值与函数，函数对不可变值进行处理，映射成另一个值。

二、Java重要的函数式接口

1、什么是函数式接口

函数接口是只有一个抽象方法的接口，用作 Lambda 表达式的类型...]]></description><category></category></item><item><title><![CDATA[Spring Boot2 理解自动化配置的原理]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/103084201</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/103084201</guid><author>zhangsf666</author><pubDate>Fri, 15 Nov 2019 14:04:26 +0800</pubDate><description><![CDATA[Spring Boot2 理解自动化配置的原理
]]></description><category></category></item><item><title><![CDATA[java正则表达式]]></title><link>https://blog.youkuaiyun.com/zhangsf666/article/details/100559662</link><guid>https://blog.youkuaiyun.com/zhangsf666/article/details/100559662</guid><author>zhangsf666</author><pubDate>Thu, 05 Sep 2019 15:58:25 +0800</pubDate><description><![CDATA[《常用单一表达字符意义

字符的取值范围
1.[abc]:表示可能是a，可能是b，也可能是c。
2.[^abc]:表示不是a,b,c中的任意一个
3.[a-zA-Z]:表示是英文字母
4.[0-9]:表示是数字
简洁的字符表示
.：匹配任意的字符
\d：表示数字
\D：表示非数字
\s：表示由空字符组成，[\t\n\r\x\f]
\S：表示由非空字符组成，[^\s]
\w：表示...]]></description><category></category></item></channel></rss>