JAVASE基础(五)

来源:互联网 发布:2016乒超联赛网络 编辑:程序博客网 时间:2024/06/03 15:47

一、函数

1.函数定义

函数的定义格式:

修饰符   返回值类型   函数名(形式参数列表){    函数体(需要被封装起来的功能代码);}

函数的特点:
1. 函数的作用就是把一个功能代码封装起来,已达到功能代码可以被复用的效果。
2. 定义好了一个函数,需要被调用函数才会执行。 main函数不需要我们手动调用,是由jvm调用。
3. 一个函数如果没有返回值,那么返回值类型应该要使用void表示。
4. 函数的返回值类型是void的时候,函数可以出现return关键字,这时候return关键字的作用是结束一个函数。
5. 一个函数可以被重复调用多次。

2.return 关键字:

return关键字的作用:
1. return可以返回一个结果给函数的调用者。
2. 可以停止一个函数。

break关键字的作用: 结束当前所在的循环。

注意:
1.如果一个函数的返回值类型是具体的数据类型(非void),那么该函数在任何情况都应该有返回值。
2. 一个函数的返回值类型是void,该函数也可以出现return关键字,但是return关键字后面不能有数据,这时候return关键字的作用主要用于停止一个函数。

3.函数的重载:

函数的重载:函数的重载就是在一个类中出现了两个或者两个以上同名的函数。

函数的重载的作用: 一个函数名可以定义多个函数以应对各种不同类型 的参数。

函数重载的要求:
1. 函数名必须一致。
2. 形参列表不一致(形式参数的个数不一致或者是对应的数据类型不一致)
3. 函数的重载与返回值类型无关。

二、数组

1.定义数组的格式:

数组:数组就是同一种数据类型数据的集合容器。
定义数组的格式:

数据类型[] 变量名 = new 数据类型[容量大小];

数组的特点:
1. 对于存储到数组中的数据都会分配一个编号(索引值、角标、下标),索引值从0开始,最大是length-1;
左边: int[] arr 声明了一个int类型的数组变量,名字是arr.

int: 表示该容器只能存储int类型的数据。

[] : 表示是一个数组类型。

arr: 变量名。

右边: new int[125]; 创建了一个int类型的数组对象,该对象的容量是125个数据。

new : new 是用于创建一个对象的关键字。

int : 表示该数组对象只能存储int类型的数据

[]: 表示是一个数组类型。

125: 表示该数组容器的容量大小。

局部变量:在方法(函数)内部定义的变量我们则成为局部变量。

2.数组的初始化方式:

动态初始化:    格式:        数据类型[] 变量名 = new 数据类型[容量大小];静态初始化:     格式:        数据类型[] 变量名 = {元素1,元素2.....};

疑问:到底使用哪种初始化方式会更加好?

要看需求,如果数据一开始就已经确定,那么建议使用静态初始化,如果数据一开始的时候并没有
确定,那么则使用动态初始化。

3.数组常见的问题:

1. Exception in thread "main" java.lang.NullPointerException   空指针异常。原因: 引用类型变量没有指向任何的对象,而使用了对象的功能或者是访问了对象的属性。

这里写图片描述

 2. ArrayIndexOutOfBoundsException  角标越界异常。 原因: 访问了不存在的索引值。

4.数组的特点:

1. 数组只能存储同一种数据类型的数据。2. 数组一旦初始化,长度固定。3. 数组中元素与元素之间的内存地址是连续的。

5.数组内存分析

1.内存图
内存图

这里写图片描述

这里写图片描述

2.数组长度固定内存分析
这里写图片描述