1,StringBuilder提供了一系列插入,追加,改变字符串里包含的字符串序列的方法,StringBuffer用法相同,只是StringBuffer是线程安全的。
StringBuilder sb=new StringBuilder();
sb.append("java");//追加字符串
sb.insert(0,"hello ");//插入
sb.replace(5, 6, ",");//替换
sb.delete(5, 6);//删除
sb.reverse();//反转
2,Random类:用于生成一个伪随机数。
Random rand=new Random();
System.out.println(rand.nextBoolean());
byte[] buffer=new byte[16];
rand.nextBytes(buffer);
System.out.println(Arrays.toString(buffer));
System.out.println(rand.nextDouble());//生成0.0~1.0的伪随机数
System.out.println(rand.nextFloat());//生成0.0~1.0的伪随机数
System.out.println(rand.nextInt());//生成int范围的伪随机数
System.out.println(rand.nextInt(26));//生成0~26的伪随机数
3,当两个Random的对象种子数相同时,会产生相同的数字序列。
Random rand=new Random(26);//注意:是在定义时就给定默认值
System.out.println(rand.nextInt());//生成0~26的伪随机数
Random rand1=new Random(26);
System.out.println(rand1.nextInt());//生成0~26的伪随机数
4.BigDecimal:用于精确表示计算浮点数的类。创建对象时一定要用String对象作为构造器参数,而不是使用double数字
规范格式:
public static double add(double v1,double v2) {
BigDecimal b1=BigDecimal.valueOf(v1);
BigDecimal b2=BigDecimal.valueOf(v2);
return b1.add(b2).doubleValue();
}
public static void main(String[] args) throws IOException {//type name = new {//type();
System.out.println(add(0.01,0.05));
}
5.正则表达式:一个强大的字符串处理工具,可以对字符串进行查找,提取,分割,替换等操作。
Pattern对象是正则表达式编译后在内存中的表达形式,因此,正则表达式必须先被编译为Pattern对象,然后利用Pattern对象创建对应的Matcher对象,执行所匹配的状态保留在Matcher中,多个Matcher对象可共享同一个Pattern对象。
Matcher类方法:
find():返回目标字符串中是否包含与Pattern匹配的子串
group():返回上一次与Pattern匹配的子串
String regstr="Java is very easy!";
System.out.println("目标字符串: "+regstr);
Matcher m=Pattern.compile("\\w+").matcher(regstr);
while(m.find()) {
System.out.println(m.group()+"起始位置:"+m.start()+" 其结束位置:"+m.end());
}