java基础知识汇总(三)

PART 1: while循环 双重for循环

1. 循环结构(while循环语句)

基本格式

while(判断条件语句) {
    循环体语句;
}

扩展格式

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

2. 循环结构(for循环和while循环的区别)

  • for循环和while循环可以等价转换,但仍有小区别:
    • 控制条件语句所控制的变量,在for循环结束后不能访问,while循环可以继续使用。
    • for循环适合针对一个范围判断操作,while循环适合判断次数不明确的操作。

3. 循环结构(do…while循环语句)

基本格式

do {
    循环体语句;
}while(判断条件语句);

扩展格式

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

4. 循环结构(区别及注意事项)

  • 三种循环语句可以完成相同功能,但有区别:
    • do…while循环至少执行一次循环体。
    • for循环和while循环只有在条件成立时执行循环体。
  • 注意事项:
    • 优先考虑for循环,再考虑while循环,最后考虑do…while循环。
    • 死循环示例:while(true){}for(;;){}

PART 2:跳转控制语句 方法

1. 运算符

  • Java中的goto是保留字,目前不能使用。替代控制语句:break,continue和return。

2. 跳转控制语句(break)

  • 使用场景:switch语句中,循环语句中。
  • 作用:跳出单层循环,跳出多层循环,带标签的跳出。

3. 跳转控制语句(continue)

  • 使用场景:循环语句中。
  • 作用:单层循环中退出本次循环。

4. 跳转控制语句(return)

  • 作用:结束方法,返回方法指定类型的值。

5. 方法概述

  • 将特定功能的代码块命名为方法,提高代码复用性。

5.1. 方法定义及格式

修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2…) {
    函数体;
    return 返回值;
}

5.2 方法格式的解释说明

方法格式解释

  • 修饰符:用于限定方法的访问范围和特性,如 public, private, static 等。
  • 返回值类型:限定方法执行完毕后返回值的数据类型,如 int, void, String 等。
  • 方法名:方法的名称,需符合Java命名规则,方便在代码中调用。
  • 参数类型:定义调用方法时传入参数的数据类型。
  • 参数名:参数的名称,作为变量在方法体中使用。
  • 方法体:方法的具体实现代码,包含逻辑和操作。
  • return:用于结束方法执行,并返回一个值给方法的调用者。

方法定义格式示例

修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {
    // 方法体,包含实现逻辑的代码
    
    // 使用return语句返回值,对于void类型的函数,表示结束方法执行
    return 返回值;
}

方法特点说明

  • 方法可以没有参数,但必须有返回值类型,即使返回值类型为 void
  • 方法名后的小括号内列出所有参数,参数之间用逗号分隔。
  • 方法体是方法的实现部分,包含了方法执行的所有操作。
  • return 关键字用于从方法返回,可以返回一个值或者什么都不返回(在 void 类型的方法中)。

方法调用示例

// 假设有一个方法名为 `add`,接受两个 `int` 类型的参数,并返回它们的和
int result = add(10, 20);

// 调用方法 `add` 并将结果赋值给变量 `result`

6. 有明确返回值的方法调用

  • 推荐方式:赋值调用。

7. 方法注意事项

  • 方法不调用不执行,定义时参数用逗号隔开,调用时不用传递数据类型,有返回值的方法要有return带回值。

PART 3:方法的重载

1. 方法重载

  • 允许存在同名方法,只要参数个数或类型不同。

2. 方法重载案例

  • 比较两个数据是否相等,参数类型分别为byte, short, int, long。

PART 4:数组初始化 内存图

1. 数组概述

  • 数组是存储同一种数据类型多个元素的集合。

2. 数组概念

  • 数组既可以存储基本数据类型,也可以存储引用数据类型。

3. 数组的初始化

  • 动态初始化:指定数组长度,系统分配初始值。
  • 静态初始化:指定每个数组元素的初始值。

4. Java中的内存分配

  • 栈存储局部变量,堆存储new出来的东西。

5. 数组的初始化

  • 静态初始化:指定每个数组元素的初始值。

6. 数组操作常见问题

  • 数组索引越界:ArrayIndexOutOfBoundsException
  • 空指针异常:NullPointerException

7. 二维数组概述

  • 二维数组是元素为一维数组的数组。

8. 二维数组定义格式

  • 格式1:数据类型[][] 变量名 = new 数据类型[m][n];
  • 格式2:数据类型[][] 变量名 = new 数据类型[m][];
  • 格式3:数据类型[][] 变量名 = new 数据类型[][]{{元素…},{元素…},{元素…}};

热门相关:从港综签到成为传说   国民校草求抱抱   终极高手   亚二一族粤语   呆萌小青梅:妖孽竹马太腹黑