第二章 Java基础知识(下)

2.1、分支结构(if、switch)

2.1.1、if语句

格式一:

if (关系表达式) {     语句体; } 

流程一:

①首先计算关系表达式的值

②如果关系表达式的值为true就执行语句体

③如果关系表达式的值为false就不执行语句体

④继续执行后面的语句内容


格式二:

if (关系表达式) {     语句体1; } else {     语句体2; } 

流程二:

①首先计算关系表达式的值

②如果关系表达式的值为true就执行语句体1

③如果关系表达式的值为false就执行语句体2

④继续执行后面的语句内


格式三:

if (关系表达式1) {     语句体1; } else if (关系表达式2) {     语句体2; } ... else {     语句体n+1; } 

流程三:

①首先计算关系表达式1的值

②如果值为true就执行语句体1;如果值为false就计算关系表达式2的值

③如果值为true就执行语句体2;如果值为false就计算关系表达式3的值

④…

⑤如果没有任何关系表达式为true,就执行语句体n+1。

2.1.2、switch语句

格式:

switch (关系表达式) {     case 1:         语句体1;         break;     case 2:         语句体2;         break;     ...     default:         语句体n+1;         [break;] } 

流程:首先计算出关系表达式的值,其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉,注意default中的break可以省略。

注意:

  1. 关系表达式的取值可以是byte、short、int、char
  2. JDK5以后可以是枚举
  3. JDK7以后可以是String

2.2、循环结构(for、while、do…while)

2.2.1、for语句

格式:

for (初始化语句;条件判断语句;条件控制语句) {     循环体语句; } 

流程:

①执行初始化语句

②执行条件判断语句,看其结果是true还是false,如果是false,循环结束,如果是true,继续执行

③执行循环体语句

④执行条件控制语句

⑤回到②继续

2.2.2、while语句

格式:

初始化语句; while (条件判断语句) {     循环体语句;     条件控制语句; } 

流程:

①执行初始化语句

②执行条件判断语句,看其结果是true还是false,如果是false,循环结束,如果是true,继续执行

③执行循环体语句

④执行条件控制语句

⑤回到②继续

2.2.3、do…while语句

格式:

初始化语句; do {     循环体语句;     条件控制语句; }while(条件判断语句); 

流程:

① 执行初始化语句

② 执行循环体语句

③ 执行条件控制语句

④ 执行条件判断语句,看其结果是true还是false,如果是false,循环结束,如果是true,继续执行

⑤ 回到②继续

2.2.4、死循环语句

第一种: for(;;){      } 第二种: while(true){      } 第三种: do{      }while(true); 

2.3、跳转控制(break、continue)

break:跳出最近循环,循环语句结束 continue:跳过本次循环,继续下次循环 

2.4、数组

定义:数组是用于储存多个相同类型数据的有序集合。组成数组的各个变量称为数组的分量,也称为数组的元素,有时也称为下标变量。用于区分数组的各个元素的数字编号称为下标。

格式:

第一种:数据类型[] 数组名; 第二种:数据类型 数组名[]; 

初始化:

动态初始化 含义:数组动态初始化就是只给定数组的长度,由系统给出默认初始化值 格式:数据类型[] 数组名 = new 数据类型[数组长度]; 举例:int[] arr = new int[3];  静态初始化 含义:在创建数组时,直接将元素确定,由系统给出数组长度 格式:数据类型[] 数组名 = new 数据类型[]{元素1,元素2,...}; 简化:数据类型[] 数组名 = {元素1,元素2,...}; 举例:int[] arr = {1, 2, 3}; 

数组遍历:

public class Main {      public static void main(String[] args) {         //定义数组         int[] arr = {11, 22, 33, 44, 55};         //数组遍历 arr.length:代表数组个数         for (int i = 0; i < arr.length; i++) {             System.out.println(arr[i]);         }     }  } 

常见异常:

  1. ArrayIndexOutOfBoundsException:数组下标越界异常
  2. NullPointerException:空指针异常

2.5、内存区域

区域名称 区域作用 区域特点
栈内存 储存局部变量 1.栈内存的数据用完就释放
堆内存 储存 new 出来的东西 1.每一个 new 出来的东西都有地址值
2.每个变量都有默认值
(byte, short, int, long 的默认值为 0;)
(float, double 的默认值为 0.0;)
(char 的默认值为 “u0000”;boolean 的默认值为 false;)
(引用类型为 null)
3.使用完毕就变成垃圾,但是并没有立即回收,垃圾回收器空闲的时候回收。
方法区 存储可以运行的class文件

2.6、方法

定义:是将具有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集

格式:

public static 返回值类型 方法名(参数列表) {     方法体;     return 数据; } 

注意:

  1. 方法不能嵌套定义,但是方法可以嵌套调用
  2. 方法必须先定义,后调用,否则程序将报错
  3. 方法定义时,多个参数之间使用逗号(,)分隔
  4. void表示无返回值,return可省略也可不省

形参实参:

形参:方法定义中的参数 实参:方法调用中的参数 

方法重载:指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法相互构成重载

  1. 多个方法在同一个类中
  2. 多个方法具有相同的方法名
  3. 多个方法的参数不相同:参数类型或者数量不同

参数传递:

方法参数传递基本类型:基本数据类型的参数,形式参数的改变,不会影响实际参数 方法参数传递引用类型:对于引用类型的参数,形式参数的改变,影响实际参数的值 

区块链毕设网(www.qklbishe.com)全网最靠谱的原创区块链毕设代做网站
部分资料来自网络,侵权联系删除!
资源收费仅为搬运整理打赏费用,用户自愿支付 !
qklbishe.com区块链毕设代做网专注|以太坊fabric-计算机|java|毕业设计|代做平台 » 第二章 Java基础知识(下)

提供最优质的资源集合

立即查看 了解详情