java基础知识
java类可能有很多个对象,但只能有一个Class对象
java基本数据类型有哪些,int, long占几个字节
整型:byte, short, int, long
字符型:char
浮点型:float, double
布尔型:boolean
byte属于Java中的整型,长度为1字节8bit,取值10000000(-128)到 01111111(127),变量初始化默认值为0,包装类Byte
short属于Java中的整型,长度为2字节16bit,取值10000000 00000000(-32768)到 01111111 11111111(32767),变量初始化默认值为0,包装类Short
int属于Java中的整型,长度为4字节32bit,取值-2^31 (-2,147,483,648)到 2^31-1(2,147,483,647),变量初始化默认值为0,包装类Integer
long属于Java中的整型,长度为8字节64bit,取值-2^63 (-9,223,372,036,854,775,808)到 2^63-1(9,223,372,036,854,775,8087),变量初始化默认值为0或0L,包装类Long
float属于Java中的浮点型,也叫单精度浮点型,长度为4字节32bit,变量初始化默认值0.0f,包装类Float
double属于Java中的浮点型,也叫双精度浮点型,长度为8字节64bit,变量初始化默认值0.0d,包装类Double
char属于java中的字符型,占2字节16bit,可以赋值单字符以及整型数值, 变量初始化无默认值,包装类Character。
boolean仅有两个值true, false,变量初始化默认值false
== 和 equals有什么区别
对于基本数据类型:(byte,short,char,int,float,double,long,boolean),比较的是值
他们是作为常量在方法区中的常量池里面以HashSet策略存储起来的,对于这样的字符串 "123" 也是相同的道理,在常量池中,一个常量只会对应一个地址,因此不管是再多的 123,"123" 这样的数据都只会存储一个地址,所以所有他们的引用都是指向的同一块地址,因此基本数据类型和String常量是可以直接通过==来直接比较的。