object类:最高级的类,如果没有写继承,则会自动继承object父类。
instanceof:检测左侧对象是不是右侧的实例只是判断类是否有关系!
==与equals比较
==
对于基本数据类型来说==是比较他们的值
对于应用数据类型来说是比较内存地址
equals对对象进行比较,一定要重写equals方法,用obj和this(自己进行比较)
toString方法:如果打印的是一个对象,则默认调用的toString的方法,对于大多数的程序来说要重写toSting方法。
基本数据类型的封装类与基本数据类型一一对应但是int为Integer
封箱:把基本数据类型封装到一个对象里。
在堆内存中有一个缓存区域,创建对象时要先看一下缓存中有没有此对象,如果没有就创建一个,有则直接调用。
封箱中缓存的范围是-128-127之间超过了这个数值则为false。
如:Integer i1=10;
Integer i2=10;
System.out.println(i1==i2);//true
Integer i3=1000;
Integer i4=1000;
System.out.println(i3==i4);//false
.length 长度
.charAt()从0开始计算第几个的是哪个字符
compareTo第一个字符开始进行比较,按照字典顺序
equals ignorecase忽略大小写
substring 获取子字符串,根据下标[m,n)(2,4)
(2)从第二个开始到结束
.indexOf lastIndexOf
获取一个下标,用于检测一个字符串是否含有某个子字符串如检测一个邮箱中是否有@符号,有则输出,没有返回-1
.startwith 以哪个字符串开头
.stratWith(”hello“,2)开头第二个字符是否为hello
replace(char oldchar.replace oldchar)
split截取字符串并输出
trim忽略空白空格以及table
StringBuffer
字符串一旦创建就不会更改,对字符串进行操作就会创建一个新的字符串,因为字符串本身为一个char数组
StringBuffer默认的容量为16,如果超过该容量则进行翻倍并+2,若还是超过该容量那么就将字符串所用容量付给字符容量
.append追加
StringBuffer result= new StringBuffer;
for(i=1;i<100000;i++){
result.append(i).append(*);
}
System.out.println(result);/
StringBuilder线程不安全,有关同步和不同步之间的关系但是比较快
Stringbuffer线程安全,所以就会有损失
scanner 输入某些进行一些操作。