第2章 Java编程基础
本章重点
·Java的基本语法形式
·Java语言中的常量与变量
·Java语言运算符的使用
·Java程序的流程控制
·Java中方法的定义与使用
·Java中数组的定义与使用
2.1 Java的基础语法
2.1.1 Java代码的基本格式
Java中的程序代码都必须放在一个类中。类需要使用class关键字定义:
(1) Java中的程序代码可分为结构定义语句和功能执行语句;其中,结构定义语句用于声明一个类或方法,功能执行语句用于实现具体的功能每条功能执行语句的最后都必须用分号(;)结束。
(2) Java语句是严格区分大小写的。
(3) 编写Java代码时,为了便于阅读,应该使用一种良好的格式进行排版;(不是必需的)
(4) Java程序中一句连续的字符串不能分开在两行中书写;否则编译错误
2.1.2 Java中的注释
Java中的注释有三种:
(1) 单行注释 用符号”//”表示
(2) 多行注释 用符号/* */表示
(3) 文档注释 用符号 /** */表示
注意:多行注释/* */可以嵌套单行注释//; 多行注释/* */不能嵌套多行注释/* */
2.1.3 Java中的标识符
标识符——包名、类名、方法名、参数名、变量名等符号;
标识符组成由大小写字母、数字、下划线(_)和美元符号($)组成,标识符不能以数字开头,不能时Java中的关键字。
建议初学者在定义标识符时还应该遵循以下规则:
(1) 包名所有字母一律小写,例如 cn.baidu.www。
(2) 类名和接口名每个单词的首字母都要大写,例如ArrayList、Iterator。
(3) 常量名所有字母都大写,单词之间用下划线连接,例如DAY_OF_MONTH。
(4) 变量名和方法名的第一个单词首字母小写,从第二个单词开始每个单词首字母大写,例如lineNumber、getLineNumber。
(5) 在程序中,应该尽量使用有意义的英文单词来定义标识符,使得程序便于阅读,例如使用userName表示用户名,passWord表示密码。
2.1.4 Java中的关键字
关键字(保留字)——编程语言里事先定义好并赋予了特殊含义的单词
注:所有的关键字都是小写的。
程序中的标识符不能以关键字命名。
2.1.5 Java中的常量
常量——在程序中固定不变的值,是不能改变的数据。
- 整型常量
表现形式:二进制(以0b或0B开头)、八进制(以0开头)、十进制、十六进制(以0x或0X开头)。
- 浮点数常量
浮点数常量就是在数学中用到的小数。
浮点数常量还可以通过指数形式来表示。
- 字符常量
字符常量用于表示一个字符,一个字符常量由一对英文半角格式的单引号’’引起来,它可以是英文字母、数字、标点符号以及由转移序列来表示的特殊字符。
‘\u0000’ 表示一个空白字符 既在单引号之间没有任何字符。之所以能这样表示,是因为Java采用的是Unicode字符集,Unicode字符以\u开头。
- 字符串常量
用于表示一串连续的字符,一个字符串常量由一对英文半角格式的双引号””引起来。
一个字符串可以包含一个字符或多个字符,也可以不包含任何字符,既长度为零。
- 布尔常量
布尔常量既布尔型的两个值true和false,该常量用于区分一个事物的真与假。
- Null常量
Null常量只有一个值null,表示对象的引用为空。
特殊字符——反斜杠(\);作用是用来转义后面一个字符
常见的转义字符
·\r
·\n
·\t
·\b
2.2 Java中的变量
2.2.1 变量的定义
变量——可以改变的量,内存单元中存储的数据就是变量的值。
2.2.2 变量的数据类型
在Java中变量的数据类型分为两种,既基本数据类型和引用数据类型。
1.整数类型变量
注:所赋的值超出了int型的取值范围,后面必须加上L(或小写l)。
2. 浮点数类型变量
E表示以10为底的指数,E后面的+号和—号代表正指数和负指数。
注:在Java中,一个小数会被默认为double类型的值,因此在为一个float类型的变量赋值时,要在赋值的后面加上字母F(或小写f)。
在为double类型的变量赋值时,可以在后面加上字母D(或小写d),也可以不加(推荐加);
3.字符类型变量
字符类型变量用于存储一个单一字符,在Java中中char表示。每个char类型的字符变量占用2个字节。
4.布尔类型变量
用来存储布尔值,在Java中用boolean表示,该类型的变量只有两个值,既true和false。
2.2.3 变量的类型转换
数据类型转换分为两种:自动类型转换(隐式类型转换)和强制类型转换(显式类型转换)。
1.自动类型转换
实现自动类型转换的条件:1.两种数据类型彼此兼容,2目标类型的取值范围大于源类型的取值范围。
由于int类型取值范围大于byte类型的取值范围,所以自动完成转换,编译时不报告任何错误。
(1).整数类型之间可以实现转换
(2).整数类型转换为float类型。
(3).其他类型转换为double类型。
2.强制类型转换
实现强制类型转换,当两种类型彼此不兼容或者目标类型取值范围小于源类型时,自动类型转换无法进行时,必须要进行强制类型转换。
以上example会编译失败。
强制类型转换格式:
Fm: 目标类型 变量名=(目标类型)值;