Java数据类型

Java数据类型

八大数据类型:
1、整型
1个字节占8位
byte 1字节 -128~127
short 2字节 -32768~32767
int 4字节 政府20亿左右
long 字节 非常大

2、字符型
char 占2个字节,采用的是Unicode编码格式,支持中文

3、浮点型
float 4字节 单精度
double 8字节 双精度

4、布尔型
boolean true为真 false 为假

在前面加final,皆可以将数据类型变为常量

final int APPLE_PRICE_PER_KM = 5;//声明常量

数据类型转换
自动转换,准话为精度高度
int+ float = float

强制转换
精度变小

idouble d1 = 3.5555;
int i1 = (int)d1;
System.out.println(i1);//输出3

舍弃前面的字节码

int i2 = 257;
byte b1 =(byte)i2;
System.out.println(b1);//输出为1

初始化:
局部变量必须进行初始化
实例变量和类变量:编译器可以自动对他们进行初始化
boolean 类型默认是false
char默认类型‘\000’
byte 默认0
short 默认0
float 0.0f
……

String字符串
字符串常量池,示例:

String s1 = "hello";//String类型变量
String s2 = "hello";//声明另外一个String类型变量
//比较内容
System.out.println(s1.equals(s2));	
//比较内存地址
System.out.println(s1==s2);

结果出输出

true
true

如果是new出来的,String对象都是在堆内存
示例:

String s1 = "hello";//String类型变量
String s2 = "hello";//声明另外一个String类型变量
String s3 = new String("hello");
String s4 = new String("hello");

//比较内容
System.out.println(s1.equals(s2));
//比较内存地址
System.out.println(s1==s2);

System.out.println(s1.equals(s3));
System.out.println(s1 == s3);
System.out.println(s3==s4);

输出:(String equals比较的是内容,Object 的equals比较的是指向的地址))

true
true
true
false
false

你可能感兴趣的:(JAVA进阶之路)