`
369540808
  • 浏览: 199774 次
文章分类
社区版块
存档分类
最新评论

Java基础之011-Java基本数据类型及其包装类

 
阅读更多

Java基础之011-Java基本数据类型及其包装类

老帅

1、Java有8种基本数据类型

类型

包装类

位数

最小值

最大值

byte

java.lang.Byte

8

Byte.MIN_VALUE=-128

Byte.MAX_VALUE=127

short

java.lang.Short

16

Short.MIN_VALUE=-32768

Short.MAX_VALUE=32767

int

java.lang.Integer

32

Integer.MIN_VALUE=-2147483648

Integer.MAX_VALUE=2147483647

long

java.lang.Long

64

Long.MIN_VALUE=-9223372036854775808

Long.MAX_VALUE=9223372036854775807

float

java.lang.Float

32

Float.MIN_VALUE=1.4E-45

Float.MAX_VALUE=3.4028235E38

double

java.lang.Double

64

Double.MIN_VALUE=4.9E-324

Double.MAX_VALUE=1.7976931348623157E308

char

java.lang.Character

16

Character.MIN_VALUE=0

Character.MAX_VALUE=65535

boolean

java.lang.Boolean

1

0

1

2、几点要注意的

1) char:char属于字符类型,在存储的时候用2个字节来存储,因为Java本身的字符集不是用ASCII码来进行存储,是使用的16位Unicode字符集,它的字符范围即是Unicode的字符范围,在变量初始化的时候,char类型的默认值为'u0000'

2) 当整数类型的数据使用字面量赋值的时候,默认值为int类型,就是直接使用0或者其他数字的时候,值的类型为int类型,所以当使用long a = 0这种赋值方式的时候,JVM内部存在数据转换。

通过字面量给long类型变量赋值:long a = 0L

3) 当实数类型的数据使用字面量赋值的时候,默认值为double类型,就是直接使用0.1或者其他实数的时候,值的类型为double类型,JVM会使用double类型的数据类型。

通过字面量给float类型变量赋值:float b = 0.1


3、包装类

为了方便操作基本数据类型值,将其封装成了对象,在对象中定义了属性和行为丰富了该数据的操作。用于描述该对象的类就称为基本数据类型对象包装类。

3.1该包装对象主要用基本类型和字符串之间的转换。

A. 基本类型--->字符串

a) 基本类型数值+""

b) 用String类中的静态方法valueOf(基本类型数值);

c) 用Integer的静态方法toString(基本类型数值);

B. 字符串--->基本类型

a) 使用包装类中的静态方法

Integer i= Integer(“123”);

b) 使用paraseXXX方法

intparseInt("intstring");

longparseLong("longstring");

booleanparseBoolean("booleanstring");

只有Character没有parse方法

c) 如果字符串被Integer进行对象的封装。

Integer i= Integer(“123”);

可使用另一个非静态的方法,i.intValue();

将一个Integer对象转成基本数据类型值。

3.2 整数具备不同的进制体现。

A. 十进制-->其他进制。

toBinaryString

toOctalString

toHexString

B. 其他进制-->十进制。

parseInt("string",radix)

3.3 自动装箱与拆箱

装箱:把基本类型用它们相应的引用类型包装起来,使其具有对象的性质
拆箱:和装箱相反,将引用类型的对象简化成值类型的数据

JDK1.5以后,简化了定义方式。

Integerx = new Integer(4);可以直接写成

Integerx = 4;//自动装箱。编译器调用的是static Integer valueOf(int i)

x = x + 5;//自动拆箱。编译器调用的是int intValue(int i)。

需要注意:

在使用时,Integer x = null;上面的代码就会出现NullPointerException。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics