目录

  • IDEA的使用
  • 数组
  • 方法
  • Debug

IDEA的使用

(1) 基本介绍

  • IDEA是Java语言开发的集成环境
  • 集成环境:把代码编写、编译、执行、调试等多种功能综合到一起的开发工具。

(2) IDEA中的项目结构

image-73

(3) IDEA中内容辅助线和快捷键

  • 快速生成语句:
    1. 快速生成main()方法:psvm,回车
    2. 快速生成输出语句:sout,回车
  • 内容辅助键:Ctrl+Alt+space(内容提示,补全代码等)
  • 快捷键:
    • 注释:
      • 单行注释:选中代码,Ctrl+/,再次使用会取消注释
      • 多行注释:选中代码,Ctrl+Shift+/,再次使用取消
    • 格式化:Ctrl+Alt+L

(4) IDEA中的模块操作

  • 新建模块
  • 删除模块
  • 导入模块

数组

(1) 数组定义格式

  • 数组概述:数组是一种用于存储多个相同类型数据的存储模型
  • 数组的定义格式:
    • 格式一:数组类型[] 变量名
    • 格式二:数据类型 变量名[]

(2) 数组初始化概述

  • Java中在数组必须先初始化才能使用
  • 所谓初始化:就是为数组中的数组元素分配内存空间,并为每个数组元素赋值

(3) 数组初始化的方式

  • 动态初始化

    • 初始化的时候只指定数组长度,由系统为数组分配初始值
    • 格式:数据类型[] 变量名 = new 数据类型[数组长度];
  • 静态初始化

    • 初始化时指定每个数组元素的初始值,由系统决定数组长度
    • 格式:数据类型[] 变量名 = new 数据类型[]{数据1,数据2,数据3,……};

(4) 数组元素访问

  • 数组内部保存的数据的访问方式:数组名[索引]
  • 索引是数组中数据的编号方式
  • 作用:索引用于访问数组中的数据使用,数组名[索引]等同于变量名,是一种特殊的变量名
  • 特征1:索引从0开始
  • 特征2:索引是连续的
  • 特征3:索引逐一增加的,每次加1

(5) 内存分配

  • 概述:Java程序在运行时,需要在内存中分配空间。为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。
  • 数组在初始化时,会为存储空间添加默认值
    • 整数:默认是0
    • 浮点数:默认是0.0
    • 布尔值:默认为false
    • 字符:默认值为空字符
    • 引用数据类型:默认值为null
  • 栈内存:存储局部变量
    • 定义在方法中的变量,例如:arr
    • 使用完毕,立即消失
  • 堆空间:存储new出来的内容(实体,对象)
    • 数组在初始化时,会为存储空间添加默认值
    • 每一个new出来的东西都有一个地址值
    • 使用完毕,会在垃圾回收器空闲时被回收

(6) 数组操作的两个小问题

  • 索引越界:访问了数组中不存在的索引对应的元素,造成索引越界问题
  • 空指针异常:访问的数组已经不再指向堆内存的数据,造成空指针异常
  • null:空值,引用数据类型的默认值,表示不指向任何有效对象

(7) 数组常见操作

  • 遍历:使用for循环进行遍历操作
  • 获取数组元素的个数:数组名.length

方法

(1) 方法概述

  • 方法:是将有独立功能的代码块组织成为一个整体,使其具有特殊功能的代码集
  • 注意:
    • 方法必须先创建才可以使用,该过程称为方法定义
    • 方法创建后并不是直接运行的,需要手动使用后才执行,该过程称为方法调用

(2) 方法的定义和调用

  • 定义格式:
    public static void 方法名(){ //方法体 }

  • 调用格式:方法名();

(3) 方法练习

需求:设计一个方法用于打印两个数中的较大数

index-1024x879

(4) 带参数方法的定义和调用

  • 带参数方法定义
    • 格式:public static void 方法名(参数){……}
    • 格式(单个参数):public static void 方法名(数据类型 变量名){……}
    • 格式(多个参数):public static void 方法名(数据类型 变量名1,数据类型 变量名2,……){……}
    • 注意:
      • 方法定义时,参数中的数据类型变量名都不能缺少,缺少任意一个程序将报错
      • 方法定义时,多个参数之间使用逗号(,)分隔
  • 带参数的方法调用
    • 格式:方法名(参数);
    • 格式(单个参数):方法名(变量名/变量值);
    • 格式(多个参数):方法名(变量名1/常量值1,变量名2/常量值2);
    • 注意:
      • 方法调用时,参数的数量与类型必须与方法定义中的设置相匹配,否则程序将报错
  • 演示代码:

image-74-1024x545

(5) 形参和实参

  • 形参:方法定义中的参数,等同于变量定义格式
  • 实参:方法调用中的参数,等同于使用变量或常量

(6) 带返回值方法的定义和调用

  • 带返回值方法定义
    • 格式:
      public static 数据类型 方法名(参数){ return 数据; }

    • 注意:

      • 方法定义时return后面的返回值与方法定义上的数据类型要匹配,否则程序将报错
  • 带返回值方法调用
    • 格式1:方法名(参数);
    • 格式2:数据类型 变量名 = 方法名(参数);
    • 注意:
      • 方法的返回值通常会使用变量接收,否则该返回值将无意义
  • 演示代码:

image-75-1024x546

(7) 方法的注意事项

  • 方法不能嵌套定义
  • void表示无返回值,可以省略return,也可以单独的书写return,后面不加数据

(8) 方法的通用格式

  • 格式:
    • public static 返回值类型 方法名(参数){ 方法体; return 数据; }

    • public static:修饰符

    • 返回值类型:方法操作完毕之后返回的数据的数据类型,如果方法操作完毕,没有数据返回,这里就写void,而且方法中一般不写return

    • 方法名:调用方法时使用的标识

    • 参数:由数据类型和变量名组成,多个参数之间使用逗号隔开

    • 方法体:完成功能的代码块

    • return:然后方法操作完毕,有数据返回,用于把数据返回给调用者

  • 定义方法时,要做到两个明确
    • 明确返回值类型:主要是明确方法操作完毕之后是否有数据返回,如果没有,写void;如果有,写对应的数据类型
    • 明确参数:主要是明确参数的类型和数量
  • 调用方法时:
    • void类型的方法,直接调用即可
    • 非void类型的方法,推荐用变量接收调用

(9) 方法重载

  • 方法重载概述:方法重载指同一个类中定义的多个方法之间的关系,满足下列条件的多个方法相互构成重载
    • 多个方法在同一个类中
    • 多个方法具有相同的方法名
    • 多个方法的参数不相同,类型不同或者数量不同
  • 方法重载的特点:
    • 重载仅对应方法的定义,与方法的调用无关,调用方式参照标准格式
    • 重载仅对同一类中方法的名称与参数进行识别,与返回值无关,换句话说不能通过返回值来判定两个方法是否相互构成重载

(10) 方法的参数传递

  • 方法参数传递(基本类型)
    • 对于基本数据类型的参数,形式参数的改变,不影响实际参数的值
  • 方法参数传递(引用类型)
    • 对于引用类型的参数,形式参数的改变,影响实际参数的值
  • 案例1:数组遍历
    • 需求:设计一个方法用于数据遍历,要求遍历的结果是在一行上的。例如:[11,22,33,44,55]

image-76-1024x542

Debug

(1) Debug概述

  • Debug:是供程序员使用的程序调试工具,他可以用于查看程序执行流程,也可以用于追踪程序执行过程来调试程序
  • Debug操作流程:
    • Debug调试,又被称为断点调试,断电其实是一个标记,告诉我们从哪里开始查看
    • 如何加断点:选择要设置断点的代码行,在行号的区域后面单击鼠标左键即可。
    • 如何运行加了断点的程序
    • 看哪里
    • 点哪里:F7
    • 如何删除断点:左键删除

(2) Dubug求偶数和

image-77-1024x542