Integer包装类
1.十进制转十六进制,返回值类型为String Interger.toHexString(int i)
2.十进制转换为八进制 Integer。toOctralString(int i)
3.十进制转换二进制 Integer.toBinaryString(int i)
4.十六进制转十进制 Integer.valueOf(“FFF”,16)
5八进制转十进制 integer.valueOf(“876”,8)
6.二进制转十进制integer.valueOf(“0101”,2)
功能和integer.valuesOf()一样 Integer.parselnt(String,radix);
String类
//字符串连接
concat();
StringBuffer类
Class类
String obj=new String();
Class c;
c=obj.getClass();
System.out.println(“String对象的类型是”+c.getName());;
c=Integer.class;
System.out.println(“Integer对象的类型是”+c.getName());;
c=Class.forName(“java.lang.String”);
System.out.println(“Character对象的类型是”+c.getName());;
c=c.getSuperclass();
System.out.println(“Character对象的类型是”+c.getName());;
}
Object类
Collections
堆栈常量池
首先使用一句话来总结:堆放对象,栈放常量(但是栈也放其他的东西包括,基本类型)
常量池就是一个缓冲池,包装类型Interger在赋值的时候比如说,integer a= 10,这个时候我们就要思考这个a是一个对象吧,那么她的位置应该是在堆里面吗***,但是事实是当a 的范围在-128和127之间是,a的数值是存放于常量池当中*。
一般的面试题中Interger之间判断“”大小,使用的是“”,吗?Interger 和int比较大小用“”吗之类的问题,我们一定要明白中“隐藏点”Interger 是对象,但是不表示,她的应用对象在值相同的情况下用==比较为false,原因就是在于缓存池!对象之间的比较,比较值用的是equals方法,比较的是引用地址,
但是当integer a =100,integer b =100 ,ab 时得到的结果为true
1.Interger里弄一个换粗对于在-128-127之间的数值,就是会直接被存到缓存里的对象
2、也即是说Interger c=3 或者是Interger c = integer。valueOf(3)最终c得到的就是iinteger中的缓存的对象
常量池
1.存放字符串常量和基本类型常量(public static final)
常量池是指的是在编译时期被确定,并且被保存在已经编译.class文件中一些数据
除了包含爱代码中所定义的各种基本类型int long 和对象性(String以技术组的常量值被final进行修饰)
对于String类型磊说他的值实在常量池中的,而JVM的常量池在内存当中是以表的形式存在的对于String类型,有一张固定长度的CONSTANT_Sring_info表用来存储文字字符串串值得,注意:该表只是用于存储文字字符串值,不会用来存储符号引用
表的关键字不允许为NUll的值
关于空值NULL的说法正确的是(空值表示没有正确的值)
编译失败
在这里插入图片描述