java 数据类型 数字,Java基本数据类型

《Java基本数据类型》由会员分享,可在线阅读,更多相关《Java基本数据类型(12页珍藏版)》请在人人文库网上搜索。

1、第三章Java基本数据类型Java是一种强类型语言,即Java中的每一个变量都必须有一个声明的类型。 在Java中,有两种类型: 基本类型(primitive type) 有八种 逻辑类 boolean -文本类 char -整数类 byte, short, int, long -浮点类 double, float - 两类:数值型(numeric type) 布尔型(boolean type) 复合数据类型(reference type)。 三种:类类型(class type)、 接口类型(interface type)、 数组类型(array type)。 本章主要讲述基本数据类型。 一逻。

2、辑类boolean 与C语言不同,Java定义了专门的布尔类型。布尔类型的文字只有两个,它们是true和false。布尔类型的变量使用关键字boolean来定义。布尔型的文字和变量常常被用在条件判断语句 中。注意:在Java中,布尔型变量不是数值型变量,它不能被转换成任意一种类型。数值型变量也不能被当作布尔型变量使用。这一点和C语言完全不同。 以下是一个有关boolean类型变量的声明和初始化: boolean truth = true; 二文本类char和String 1、使用char类型可表示单个字符。一个char代表一个16-bit无符号的(不分正负的)Unicode字符。一个char文。

3、字必须包含在单引号内()。 a t 一个制表符 u? 一个特殊的Unicode字符。?应严格按照四个16进制数字进行替换 和在C语言中一样,Java也支持转义字符。Java中使用“”将转义字符与一般的字符区分开来。 Java中的转义字符 转义序列 含义 退格b 水平制表 t 换行 n 换页 f回车r 双引号 ”单引号 反斜杠 /子块中又定义子块 int c = 5; System.out.println(c+ “在第二层子块中”); System.out.println(a); System.out.println(a); 2、String不是原始类型,而是一个类(class),它被用来表示字。

4、符序列。字符本身符合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编程语言中有四种整数类型,每种类型可使用关键字by。

5、te, short, int和long中的任意一个进行声明。 整数类型的文字可使用十进制、八进制和16进制表示,如下所示: 2 十进制值是2 047 首位的0表示这是一个八进制的数值 0xBBAC 首位的0x表示这是一个16进制的数值 注意所有Java编程语言中的整数类型都是带符号的数字。 整数数据类型范围 Integer Length Name or Type Range 7 7 -1 . 2 -2 byte 8 bits 1515 -1 -2 . 2 16 bits short 3131 -1 -2 . 2 int 32 bit 6363 -1 -2 . 2 long 64 bits in。

6、t是最常用的整数类型。但是如果你要表达很大的数,比如在地理信息系统中用整数地图上点的坐标,或表示国家财政预算,就需要用到长整型long。 整数类文字属int类型,除非在其后直接跟着一个字母“L”。L表示一个long值。请注意,在Java编程语言中使用大写或小写L同样都是有效的,但由于小写l与数字1容易混淆,因而,使用小写不是一个明智的选择。上述文字的 long的形式如下: 2L 十进制值是2,是一个long 077L 首位的0表示这是一个八进制的数值 0xBAACL 前缀0x表示这是一个16进制的数值 324932432023L 423432L 而短整型short和字节型byte常常用来处理一。

7、些底层的文件操作、网络传输,或者定义大数组。 Java的整数类型不依赖于具体的系统,每种类型在任何一种机器上占用同样的存储空间,比如,int总是32位,long总是64位。在C+中,整数类型的大小是和具体的机器有关的,在SPARC机上运行正常的C+程序到了Intel 586机上就可能会溢出,因为在SPARC机上,C+的int是64位的,而Intel 586机上的C+的int是32位的。但在Java中,这个问题不存在了,因为Java的整数类型不依赖于具体的系统。 四、浮点类float和double double 缺省为 -浮点变量可用关键字float或double来声明 - 或、Df(float。

8、)如果一个数字文字包括小数点或指数部分,或者在数字后带有字母F或 - 则该数字文字为浮点。 ), d(double 浮点文字包括小数点或下列各项之一 -) 增加指数值或e (E -(float) F或f - )d (doubleD或 - 例如: - ) 一个简单的浮点值(a double 3.14 一个大浮点值 3.02E23 一个简单的float长度值 2.718F 的double值 123.4E+306D 一个大的带冗余D 浮点数据类型具有下列范围: 名称或类型 浮点长度float 32 bits double 64 bits double 注意浮点文字除非明确声明为float,否则为 如。

9、果您希望速度快一些,或者占用的空间少一些,您可以选择float型。五 数据类型转换 按照Java的语言规范,转换是指隐式的把一个表达式的类型(或值)改变成该表达式的周围的上下文能够接受的类型。有时候这需要一个运行时期的操作,以检查转换是否有效,或者把表达式的运行时期值转换成适合新类型的形式。 转换规则: 1两个操作数中有一个是double型,那么在运算前将另一个操作数也转换成double型。 2两个操作数中有一个是float型,那么在运算前将另一个操作数也转换成float型。 3两个操作数中有一个是long型,那么在运算前将另一个操作数也转换成long型。 显式的类型强制转换: double 。

10、result; result=1.5+3/2; 结果是2.5 因为3/2按整数运算计算,结果是1。 强制转换: result=1.5+(double)3/2; 结果是3。 能将任何一种类型强制转换成其他类型,但必须小心以免丢失数据信息。显然,将较长的整型数据转换为较短的整型数据很有可能丢失信息。如浮点类转化成整数一样。 当位数少的类型转化为位数多的类型时,自动类型转换 byte- short int long float double从前向后自动转换 当位数多的类型转化为位数少的类型时,强制类型转换六 、变量、说明和赋值 变量是内存中的一种存储位置。它用标识符标识,您可以通过这个标识符来修改其。

11、中存储的值。变量有相应的类型,这个类型是编译时期类型。这种类型或者是基本类型,或者是复合类型。基本类型的变量总是拥有那个确定的基本类型的值。 1、 java变量的定义 在Java中,变量在使用之前必须要先定义。变量定义的格式如下:Java中的所有类型,除了null类型以外,都可以定义变量。 数据类型 标识符,标识符; 数据类型是指定义何种类型的变量,它必须是有效的Java类型;标识符则是要定义的变量的名称,它必须是Java中合法的标识符。方括号表示可选,在一条变量定义语句中,您可以定义一个或多个变量,多个变量中间用逗号隔开。 下面给出了一些变量定义的例子: byte recordSize; s。

12、hort salary; int studentsOfPKU=80; long planetNumber; float scoreofStudent=45.23f; double distanceEarthToMoon; char firstNameOfChinesePeople; boolean isBoy; 注意:不能用Java中的关键字作为变量名。 2变量的初始化 Java程序中每个变量在使用前必须有一个值。Java中不能引用没有值的变量,程序给出了一个错误的例子。 class Test static int x; public static void main(String args)。

13、 int x ; int j = x; 会产生如下的编译错误: Variable x may be used before initialization (变量尚未初始化就被使用) 在Java中,变量在使用之前必须要先赋初值。可以在变量定义的时候赋给它初始值。例如: int foo = 3; double dn = 3.1415926D 也可以在变量定义之后再对它赋值。例如: int value; value = 1; 3局部变量的作用域 作用域,是指一个标识符在程序中的有效范围。这里,我们只讲局部变量的作用域,即在块中定义的变量的作用域。块(block)是指用一对大括号括起来的一系列语句和变。

14、量声明。比如,每个方法体都是一个块,在方法体内,也可以用定义块。块可以嵌套。程序清单4-6说明了块的概念。 注意:这里所说的块仅指方法体和方法体中嵌套的块,不包括类体。 4-6 程序清单class Block public static void main(String args) int a = 3; System.out.println(a+”在方法体中”); /此处定义了一个子块 int b = 4; System.out.println(b+ “在第一层子块中”); 程序清单4-6执行结果如下: 3在方法体中 4在第一层子块中 5在第二层子块中 块在执行时按照从前到后,从左到右的顺序依。

15、次执行。如果块中的所有语句都能正确执行,则块可以正确执行,否则,如果块中的某一条语句执行异常,那么整个块也会因同样的原因执行失败。 局部变量是在块中定义的。局部变量的作用域是从它定义之处起到它所在的块结束之处,包括它的初始化部分。如果在这个范围内重新定义了该变量(即定义了和该变量重名的变量),就会产生编译错误。也就是说,局部变量的隐藏是不允许的。程序清单4-7是一个错 误的例子,它试图隐藏局部变量,结果会产生编译错误。程序清单4-7 class Scope public static void main(String args) int a = 3; /在方法体中定义了局部变量a System。

16、.out.println(a); int a = 8; /错误!此处不能再定义同名的局部变量 编译程序清单4-7时,编译器会产生如下错误: Variable a is already defined in this method Error executing jvc.exe. 错误信息表明变量a在main方法中已经定义了,在内层块中不能重新定义以隐藏外层定义的变量a。 但是,在两个不存在包含关系的块中定义相同名字的变量是允许的,因为它们的作用域不相交。程序清单4-8示例了两个没有嵌套关系的块中变量的作用域。 程序清单4-8 class Scope2 public static void main(String args) /第一个子块 int a = 3; /在第一个子块中定义局部变量a System.out.println(“在第一个块中的变量a= “+a); /第一个块中定义的局部变量a的作用域到此结束 /第二个子块 int a = 8; /在第二个子块中定义局部变量a System.out.println(“在第二个块中的变量a= “ + a); /第二个块中定义的局部变量a的作用域到此结束 程序4-8的输出结果如下: 在第一个块中的变量a= 3 在第二个块中的变量a= 8。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值