Java中的数据类型

Java中的数据类型

一、基本数据类型

1.基本数据类型

即intcharfloatdoublebyteshortlongboolean这样的数值类型,共8种。

数据类型

位数

取值范围

说明

byte

8

-128~127

数据存储在内存中的最原始形态

Short

16

-32768~32767

 

int

32

-2^31~2^31-1

 

long

64

-2^63~2^63-1

 

float

32

 

double

64

 

char

16

\u0000~\uFFFF

 

boolean

1

true/false

 

 

 

 

 

 

2.基本数据类型的转换

1)自动类型转换也称作隐式类型转换;

将一种类型的变量赋值给另一种类型的变量时,只要满足以下条件,就会发生自动类型转换:

两种类型之间相互兼容;

目标类型大于源类型(即类型提升)。

 

如:

char ch = 'A';

int num = ch;

float f = num;

double d = f;

//类型转换自动发生,无需显式说明

2)强制转换类型

强制类型转换也称作显式类型转换;

如果被转换的值的数据类型大于其目标类型,将会丢失部分信息;

如:

int x = 65;

char ch = x;

这样的语句将报错,因为char类型精度低于int类型,编译器无法将其自动转换,只能进行强制转换:

int x = 65;

char ch = (char)x;

 

 

二、引用类型

1.引用类型数据定义

除了基本数据类型之外都是引用类型

包括API中的类,比如StringFile

也包括自定义的类,如PersonalAccountCreditAccount

包括数组,int[],String[]。

 

2.引用类型使用的场景

作为属性的类型使用;

作为方法的返回值类型使用;

作为方法的形式参数类型使用;

 

3.引用数据类型的赋值

引用类型都是对象,所以赋值都使用new调用构造方法进行赋值。

例外:String可以直接使用=赋值,不使用new

 

三、基本类型和引用类型的区别

 

 

基本数据类型

 

引用数据类型

概念

变量(单纯的值)

对象(引用)

存储位置

在栈中存值

在栈中存引用,在堆中存具体对象的属性值

赋值方式

直接赋值

new String类和包装器类可以直接赋值

 

posted on 2017-09-12 19:19  Tunechi  阅读(243)  评论(0编辑  收藏  举报