Java基本数据类型

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Java基本数据类型

Java是一种强类型语言,即Java中的每一个变量都必须有一个声明的类型。在Java中,有两种类型:

基本类型(primitive type) 有八种

逻辑类boolean

文本类char

整数类byte, short, int, long

浮点类double, float

本章主要讲述基本数据类型。

一.逻辑类──boolean

与C语言不同,Java定义了专门的布尔类型。布尔类型的文字只有两个,

它们是true和false。布尔类型的变量使用关键字boolean来定义。布尔型的文字和变量常常被用在条件判断语句中。

注意:在Java中,布尔型变量不是数值型变量,它不能被转换成任意一种类型。数值型变量也不能被当作布尔型变量使用。这一点和C语言完全不同。

以下是一个有关boolean类型变量的声明和初始化:

boolean truth = true;

二.文本类──char和String

1、使用char类型可表示单个字符。一个char代表一个16-bit无符号的(不分正负的)Unicode字符。一个char文字必须包含在单引号内(…‟)。

…a‟

…\t‟ 一个制表符

…\u????‟ 一个特殊的Unicode字符。????应严格按照四个16进制数字进行替换

和在C语言中一样,Java也支持转义字符。Java中使用“\”将转义字符与一般的字符区分开来。

Java中的转义字符

2、String不是原始类型,而是一个类(class),它被用来表示字符序列。字符本身符合Unicode标准,且上述char类型的反斜线符号适用于String。与C和C++不同,String不能用\0作为结束。

String

不是一个原始数据类型,它是一个类

具有用双引号引用的文字

“The quick brown fox jumped over the lazy dog.”

可按如下情形使用:

String greeting = “Good Morning!! \n”;

String err_meg = “ record not found !”;

三.整数类──byte, short, int, long

在Java编程语言中有四种整数类型,每种类型可使用关键字byte, short, int 和long中的任意一个进行声明。

整数类型的文字可使用十进制、八进制和16进制表示,如下所示:

2 十进制值是2

047 首位的0表示这是一个八进制的数值

0xBBAC 首位的0x表示这是一个16进制的数值

注意──所有Java编程语言中的整数类型都是带符号的数字。

整数数据类型—范围

Integer Length Name or Type Range

8 bits byte -2 7 ... 2 7 -1

16 bits short -2 15 ... 2 15 -1

32 bit int -2 31 ... 2 31 -1

64 bits long -2 63 ... 2 63 -1

int是最常用的整数类型。但是如果你要表达很大的数,比如在地理信息系

统中用整数地图上点的坐标,或表示国家财政预算,就需要用到长整型long。

整数类文字属int类型,除非在其后直接跟着一个字母“L”。L表示一个long 值。请注意,在Java编程语言中使用大写或小写L同样都是有效的,但由于小写l与数字1容易混淆,因而,使用小写不是一个明智的选择。上述文字的long的形式如下:

2L 十进制值是2,是一个long

077L 首位的0表示这是一个八进制的数值

0xBAACL 前缀0x表示这是一个16进制的数值

324932432023L

423432L

而短整型short和字节型byte常常用来处理一些底层的文件操作、网络传输,或者定义大数组。

Java的整数类型不依赖于具体的系统,每种类型在任何一种机器上占用同样的存储空间,比如,int总是32(4个字节)位,long总是64(8个字节)位。在C++中,整数类型的大小是和具体的机器有关的,在SPARC机上运行正常的C++程序到了Intel 586机上就可能会溢出,因为在SPARC机上,C++的int是64位的,而Intel 586机上的C++的int是32位的。但在Java中,这个问题不存在了,因为Java的整数类型不依赖于具体的系统。

四、浮点类──float和double

缺省为double

浮点变量可用关键字float或double来声明

如果一个数字文字包括小数点或指数部分,或者在数字后带有字母F或f (float)、D或d(double),则该数字文字为浮点。

浮点文字包括小数点或下列各项之一

E或e (增加指数值)

F或f (float)

D或d (double)

例如:

3.14 一个简单的浮点值(a double)

3.02E23 一个大浮点值

2.718F 一个简单的float长度值

123.4E+306D 一个大的带冗余D的double值

浮点数据类型具有下列范围:

浮点长度名称或类型

32 bits float

64 bits double

注意──浮点文字除非明确声明为float,否则为double

如果您希望速度快一些,或者占用的空间少一些,您可以选择float型。

五数据类型转换

按照Java的语言规范,转换是指隐式的把一个表达式的类型(或值)改变成该表达式的周围的上下文能够接受的类型。有时候这需要一个运行时期的操作,以检查转换是否有效,或者把表达式的运行时期值转换成适合新类型的形式。

转换规则:

1.两个操作数中有一个是double型,那么在运算前将另一个操作数也转换成double型。

2.两个操作数中有一个是float型,那么在运算前将另一个操作数也转换成float型。

3.两个操作数中有一个是long型,那么在运算前将另一个操作数也转换成long型。

显式的类型强制转换:

double result;

result=1.5+3/2;

结果是2.5 因为3/2按整数运算计算,结果是1。

强制转换:

result=1.5+(double)3/2;

相关文档
最新文档