Java开发常用函数

获取随机数

UUID.randomUUID().toString() // JDK提供的一个自动生成主键的方法
System.currentTimeMillis()  // 当前时间

校验

集合类校验

boolean notEmpty = CollectionUtils.isNotEmpty(list);
boolean empty = CollectionUtils.isEmpty(list);

字符串校验

isBlank,而isEmpty不算空

// org.apache.commons.lang3.StringUtils
boolean notEmpty = StringUtils.isNotEmpty(str);
boolean empty = StringUtils.isEmpty(str); // 判断某字符串是否为空,为空的标准是 str==null 或 str.length()==0
boolean notBlank = StringUtils.isNotBlank(str);
boolean blank = StringUtils.isBlank(str); // 判断某字符串是否为空或长度为0或由空白符(whitespace) 构成

Object为null校验

boolean b = Objects.nonNull(str);
boolean aNull = Objects.isNull(str);

时间类

System.currentTimeMillis(); //毫秒
new Date()
Calendar.getInstance()
new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date)

睡眠等待

TimeUnit.SECONDS.sleep(4);

字符串

String.valueOf(int i) // 将 int 变量 i 转换成字符串 
String.compareTo(String str1,String str2) // 比较对应字符的大小(ASCII码顺序),返回差值

集合类

HashMap

HashMap.merge(K key, //它将新的值赋值给到key中(如果不存在)或更新具有给定值的现有key(UPSERT)
               V value,
               BiFunction<? super V,? super V,? extends V> remappingFunction)
Map.entrySet()  // entrySet是 java中 键-值 对的集合,Set里面的类型是Map.Entry,一般可以通过map.entrySet()得到。entrySet实现了Set接口,里面存放的是键值对。一个K对应一个V。
// org.apache.commons.collections.CollectionUtils
isEmpty是否为空
select根据条件筛选集合元素
transform根据指定方法处理集合元素类似List的map()
filter过滤元素雷瑟List的filter()
find基本和select一样
collect和transform 差不多一样但是返回新数组
forAllDo调用每个元素的指定方法
isEqualCollection判断两个集合是否一致

数组

// org.apache.commons.lang.ArrayUtils
contains是否包含某字符串
addAll添加整个数组
clone克隆一个数组
isEmpty是否空数组
add向数组添加元素
subarray截取数组
indexOf查找某个元素的下标
isEquals比较数组是否相等
toObject基础类型数据数组转换为对应的Object数组