一、StringBuilder
专门用来修改字符串内容的工具类
其提供了对字符串内容编辑的:增删改插的主要功能
增:StringBuilder builder = new StringBuilder(str);
builder.append(",为了找个好工作!");
改:builder.replace(9,16,"就是为了改变世界");
删:builder.delete(0,8);
插:builder.insert(0,"活着");
反转:builder.reverse();
二、正则表达式:
[]:用来表示1个字符。[]中可以指定该字符的内容范围
\d:表示一个数字,等价与[0-9]--------取反:\D
\s:表示一个空白字符。空格,缩进,回车(占位但是看不见的字符)--------取反:\S
\w:表示一个单词字符(数字,字符,下划线) 等价于[a-zA-Z0-9_]--------取反:\W
.:表示任意一个字符
+:表示它前面的内容出现(1-人一次,即:一次以上)
*:表示它前面的内容出现任意次(0-多次)
{n}:表示它前面的内容出现n次。n是一个数字
{n,m}:表示它前面的内容出现n-m次。(>=n&&<=m) n和m是一个数字
{n,}:忽略m则表示n次以上(>=n)
{0,m}:最多m次
分组:
():可以将其内容看作一个整体
(X|Y):"|"表达"或"的意思 这个整体可以是X也可以是Y
边界匹配:
^:^出现在字符串最开始,表示字符串从这里开始
$:$表示字符串到这里结束
三、split
String line = "abc123def456ghi789jkl";
//将line按照数字部分进行拆分,得到其中所有的字母部分
String[] data = line.split("[0-9]+");
四、ReplaceAll
String line = "abc123def456ghi789jkl";
/* abc123def456ghi789jkl
V 将每个数字部分替换为"#NUMBER#" abc#NUMBER#def#NUMBERghi#NUMBERjkl */
line = line.replaceAll("[0-9]+","#NUMBER#");
System.out.println(line);
五、包装类:
int i=1;
Integer i1 = Integer.valueOf(i); 基本类型转换为包装类
int in = i1.intValue(); 该包装类对象保存的基本类型数据
long lon = i1.longValue(); 可以以其他基本类型返回
byte b = i1.byteValue(); 溢出现象仍然存在
int imax = Integer.MAX_VALUE; 常量表达其表示的基本类型的取值范围
int imin = Integer.MIN_VALUE;
String s2 = "123.123";
d = Double.parseDouble(s2); 包装类提供了一个静态方法:parseXXX(String str)
将字符串解析为对应的基本类型
String->基本类型
六、自动拆装箱
Integer in = 123; 基本类型赋值给包装类
int i = Integer.valueOf(123); 将包装类对象赋值给基本类型