String,HashMap,ArrayList 是我在工作中经常使用到的基础类。它们不同于 byte
,short
,int
,long
,float
,double
,char
,boolean
八种基本数据类型,String,HashMap,ArrayList 具备对象特征,可以调用方法。
本文旨在列出这些常用类的性能瓶颈,给出解决方案,并试图阐释性能瓶颈产生的原因。
一、String 类
String 类是日常中使用最多的类,没有之一。但因为常见,反而容易忽视对 String 的理解。以下将从 String 的用法及性能瓶颈两个方面来阐释。
1. String 的用法
基础用法:
String 的使用很简单。
String init = "init";//String初始化 String join = "partA"+"partB";//String的拼接 String slice = "Slice".subString(0,1);//String的切片 boolean isEqual = "A".equals("B"); //String的比较
工具包的使用
由于 jdk 只提供了基础用法,当我们有对 String 较复杂的操作时,为了提高代码的可读性,可以使用一些第三方的工具包中的工具类,如 org.apache.commons.lang3.StringUtils
。
以字符串的空白检验为例:
public static boolean isBlank(CharSequence cs) { int strLen; if(cs != null && (strLen = cs.length()) != 0) { for(int i = 0; i < strLen; ++i) { if(!Character.isWhitespace(cs.charAt(i))) { return false; } } return true; } else { return true; } }
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于