第二章数据类型.
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第二章 Java 中的数据类型
本章知识要点
标识符
Java 注释
Java 数据类型
2.1 使用规范的标识符为变量命名:
2.1.1标识符命名规则:
在 Java 中,标识符用来为程序中的常量、变量、方法、类、接口和包命名 .
Java 中的标识符有以下四种命名规则 :
1. 标识符由字母、数字、下划线 (_或美元符号 ($组成 .
2. 标识符的首字母由字母、下划线 (_或美元符号 ($开头,不能以数字开头 .
3. 标识符的命名不能与关键字、布尔值(true,false 和 null 相同。
4. 标识符区分大小写,没有长度限制,坚持见名知义的原则 .
2.1.2 关键字 :
关键字是 Java 语言保留的,为其定义了固定含义的特殊标识符 .
注意 :关键字全部为小写字母,程序员不能将关键字定义为标识符,否则出现编
译错误 . Java 中定义的 48个关键字如下表所示 :
提示 :
见名知义的原则 :
是指在使用标识符命名时,要使用能反映被定义者含义或作用的字符。这样,其
他人在阅读代码 时通过名称就可以对程序有所理解。
驼峰命名法就是当使用标识符命名时,如果是由一个或多个单词连接在一起,第
一个单词以小写 字母开始,第二个单词的首字母大写或每一个单词的首字母都采用
大写字母,这样的变量名看上 去就像骆驼峰一样此起彼伏,故取名。如
fileName,username.
2.2 使用注释对代码进行解释说明
注释是程序开发人员和程序阅读者之间交流的重要手段,是对代码的解释和说
明。好的注释可以 提高软件的可读性,减少软件的维护成本 .
在 Java 中,提供了 3种类型的注释 :
2.2.1 单行注释
单行注释指的是只能书写一行的注释,是最简单的注释类型,用于对代码进行简
单的说明 .
当只有一行内容需要注释的时候,一般使用单行注释。在 Eclipse 中默认使用”
Ctrl ” + “ /” , 可以快捷实现单行注释 .
单行注释的语法 :
//单行注释
在语法中
单行注释使用“ //” 开头 .
“ //”后面的内容都被认为是注释 .
注意:1. 单行注释不会被编译
2.“ //”不能放到被注释代码的前面,否则这行代码会被注释。
2.2.2 多行注释
当需要多行代码注释时使用多行注释符。
在 Eclipse 中,选中一行代码默认使用“ ctrl + shift + /”快捷键可以注释多行代码,
多行注 释的语法 .
/**
*多行注释
*/
在语法中:
1:多行注释使用” /*”开头,以” */”结尾 .
2:” /*和 */”之间的内容都被认为是注释。
例如下代码 :
/*
*HelloWorld.java
*2017.2.15
*我的第一个 Java 程序
*/
public class HelloWorld{
public static void main(String[] args{
}
}
提示:
1. 注释简单来说就是一种说明,不被当成语句执行,可以增加代码的可读性 .
2. 单行注释添加方便、随处可以添加,只能作用于一行代码 .
2.2.3 文档注释
如果想为程序生成像 JDK 帮助文档一行的文件,可以在编写代码时是使用文档
注释,使用 JDK 提 供的 javadoc 命令,将代码中的文档注释提取出来,自动生成一份
Html 格式的 api 帮助文档,其 风格与 Java 帮助文档完全一样,省去了枯燥、繁琐的
手动编写帮助文档的工作。
在 Eclipse 中,输入” /**”,然后按 Enter 键, Eclipse 会自动显示文档注释格式 .
文档注释的语法 :
/**
*文档注释
*/
在语法中:
1. 文档注释使用“ /**”开头,以” */”结尾。
2. 每个注释包含一些描述性的文本及若干个文档注释标签。
3. 文档注释标签一般以” @”为前缀,常用的文档注释标签如下图所示 :
2.3 Java数据类型
2.3.1 了解 java 中的数据类型
Java 是强类型语言, 在定义变量前需要声明数据类型。 在 Java 中主要分为两
种数据类型:基本数 据类型和引用数据类型 .
1. 基本数据类型如下图所示 :
基本数据类型 :
数值型:
整数类型 (byte,short,int,long
浮点类型 (float,double
字符型 :(char
布尔类型 (boolean
注意 :
1.char 类型占 2字节,采用 Unicode 码 .
2.byte 类型占 1字节,是整数类型的一种。
3. 所有的数据类型长度固定,不会因为硬件、软件系统不同而发生变化。
4.String 类型不是基本数据类型,而是引用数据类型,它是 Java 提供的一个类 .
2. 引用数据类型
Java 中的引用数据类型如下图所示 :
引用数据类型:类 (class
接口 (interface
数组
提示 :数组是最简单的一种引用数据类型,类和接口是面向对象语言提供的类
型 .
2.3.2 常量
常量是在程序运行中,值不能给改变的量 .
1. 整型常量
整型常量有以下 3种表示方式 :
(1十进制方式表示
(2八进制方式表示
(3十六进制方式表示
例如:
789 //十进制
077 //八进制
0X12 //十六进制 .
2. 浮点型常量
(1float(32bit
例如 :
3.4f
-45.9F
注意:java 的浮点型默认是 double ,float需要在数字后面加大写的” F ”或小写
的” f ” .
(2double(64bit
例如:
3.4
3.4d
3. 布尔常量
例如:
true
false
4. 字符常量
1 普通字符常量
例如 :
„ A ‟
„ 8‟
2 转移字符常量
例如 :
„ \n‟ ://表示换行
„ \t‟ ://表示按 tab 键
„ \b‟ ://表示按退格键
3 特殊字符常量
例如 :
„ \\‟ //反斜杠
„ \‟‟ //单引号
„ \”‟ //双引号
4 字符串常量
例如 :
“我的中国”
“ A ”
要注意字符串和字符的区别,字符用单引号,字符串用双引号。
5null 常量
例如 :
null
null 常量只有 null 一个值 , 可以把 null 常量赋给人以类型的引用类型变量 .
6 符号常量
final double PI = 3.14;
final 取义为 finally, 含义是最终的,代表了不在改变 .
2.3.3 变量
变量是在程序运行中,值可以改变的量 .
变量的语法 :
[修饰符 ] 变量类型 变量名 [=初始值 ];
例如 :
char ch =97;
int nh=‟ A ‟ ;
2.5 基本数据类型之间的转换形式 为了适应开发的需要, 经常会出现不同的基
本数据类型的数据, 相互转换的情况。 这种 转 换有精度不同带来的精度损失问
题, 也有浮点数到整数转换带来的小数位丢失问题, 我们 现 在就来讨论一下基本
数据类型的转换行为和其转换原理。 注意: boolean 是一种比较特殊的类型,这种
类型不允许和其他数据类型进行相互转 换。 2.5.1 自动转换 类型转换示意图: byte
short int long float double char 图2-2 在上图2-2 中简单描述了各基本数据类型的自
动转换方向。 所谓的自动转换是指从相应 的一种类型值转换另一种类型值时,不
需要开发人员进行特殊的设置。例如代码2-3 1 2 3 4 5 6 7 8 9 10 11 12 13 } public
class TestConvert { public static void main(String[] args { byte b=10; //定义一个byte 类
型的变量b short s=b; //将一个byte 类型的变量b 赋于short 变量s,自动转换 //将
short 类型的s 自动转换赋于int 类型的i 变量 int i=s; long l=i; //将int 类型的i 自动
转换赋于long 类型的l 变量 float f=l; //将long 类型的l 自动转换赋于float 类型的f
变量 double d=f; //将float 类型f 自动转换赋于double 类型的d 变量 char c='a'; int
ic=c; //将char 类型的c 自动转换赋于int 类型的ic 变量 } 代码2-3 注意:将 int 类
型和 long 类型转换成 float 类型时可能出现精度损失,如代 码 2-4
1 2 3 4 5 6 7 public class TestConvert2{ public static void main(String[] args { int
i=123456789; //定义一个int 类型变量i float f=I; //自动转换int 类型i 到float 类型变
量f System.out.println(i+”:”+f; } } 代码 2-4 代码2-4 的输出结果:123456789 :
1.23456792E8。 2.5.2 强制转换 1自动类型转换 将低级别的类型赋值给高级别类型
时,将进行自动类型的转换。 例如: byte b = 7; int i = b; //b 自动转换成 int 类型。
byte 级别比 int 低,所以进行自动类型转换,其转换过程如下所示: 2强制类型转
换 将高级别的类型赋值给低级别类型时,必须进行强制类型转换。 eg: int num =
786; byte by = num; //错误 byte by = (bytenum; //正确为强制类型转换 short st = num;
//错误
short st =(shortnum; //正确为强制类型转换 byte 和 short 级别比 int 低,所以必
须进行强制类型转换. byte by=(byte num;强制类型转换过程如下所示: 注意:强制类
型转换时,可能会丢失数据。Byte 强制类型转换为 int 时,int 的低位第一个字 节
中的数据 0000 0011 在强制类型转换过程中会丢失。 提示:不经基本数据类型可以
进行类型转换,存在继承关系的引用数据类型也可以进行自动或 强制类型转换. 小
结 本章内容旨在初步了解 Java 的数据类型, 并分析了基本数据类型和引用数据类
型的区 别。 在最后一个小结中提到的概念和知识点, 作者会在后续的章节进行再
次详细的讨论和使 用相 应实例进行论证。