Object
所有类的父类
-tostring:内存地址值
-equals:默认比较地址,可以重写比较内容
Random
Randow r=new Randow();r.nextInt(n);包左不包右,算法:5-10间的,nextInt(10-5+1)+5
String
常量,共享,底层就是一个字符数组
-length()
-concat(str):连接字符串
-charAt(index):某索引处的char值
-indexOf(str):某字符串第一次出现的索引处
-substring(index):从指定索引处截取到最后,双参数就是包左不包右
-toCharArray():转字符数组
-getBytes();获得字节数组
-replace(target,str):将与target匹配的替换成str
-splite(regex):指定规则切割成数组
其它类型转string->+””
String转其它,例如parseInt(s)
StringBuilder
字符串缓冲区
-append拼接,可以添加任何类型,可以链式拼接
-reverse反转
-toString转字符串
StringBuilder sb = new StringBuilder();
StringBuilder sb2 = new StringBuilder();
// 链式创建
sb2=sb.append("Hello ").append(“Java”);
system.out.print(sb==sb2);true
// 调用方法
String str = sb.toString();
System.out.println(str); // HelloJava
字符串拼接
-String直接+,底层其实还是走的stringbuilder方法,不提倡
-String的concat方法,其实就是将两个字符数组重新合并到新的字符串数组
-StringUtils的join方法,底层也是stringbuilder
-String在jdk1.8后的join方法
-StringBuffer的append方法,线程安全点,
-StringBuilder的append方法,底层也是字符数组,与string不同的是,它是对自己扩容,
效率由高到低:stringbuilder>Stringbuffer>concat>+>StringUtils.join
Static
属于类,随着类加载而只加载一次,不能修饰构造函数,静态函数中不能有this关键字,因为this表示的调用此方法的对象,而静态方法没有对象,被所有对象共享
静态代码块
随着类加载而只加载一次,常用于初始化