Java基础复习第三天

来源:互联网 发布:basel大学 知乎 编辑:程序博客网 时间:2024/05/07 15:56

关键词:方法 数组

1.方法:亦称 函数,即就是定义在类中的具有特定功能的一段独立小程序。

(1)如何定义一个功能呢?

                   a.它应该是一个封闭的区间。就是大括号。

                   b.它需要有名称。

                   c.需要有参与运算的数据。

                   d.需要定义该功能的结果类型。

         (2)具体格式:

        修饰符 返回值类型 函数名(参数类型 形式参数1,参数类型 形式参数2,...) {

                                 执行语句;

                                 return 返回值;

              }

         (3)定义或者使用一个方法或者函数,有两点需要明确的:

                   a. 明确1:功能的结果是什么呢?

                   b. 明确2:功能的未知内容有吗?

eg:需要定义一个方法,进行加法运算,获取两个整数的和。

           a.明确1:是一个和。和是整数。返回值的类型是 int.

                      b.明确2:有,加数和被加数。都是int类型,这就是参数列表。

         (4)方法名定义就是为了描述该功能。所以,一个功能往往只有一个比较好的简明释义的名称,所以,当有相同的功能时,可以使用相同的功能名,只要参数个数或者类型不同即可。

         一个类中出现同名的函数,只要他们的参数个数或者参数类型不同,就称之为函数的重载即overload。它和返回值类型无关。

2.数组:

         a.数组的定义:同一种类型数据的集合。其实数组就是一个容器。数据多了,就把用容器把它存起来,而这个容器往往就是我们的学习重点。

         b.数组的定义方式:元素类型[] 数组名 = new 元素类型[元素个数或数组长度];

           好处:数组可以存储多个数据,而且可以对数据进行编号,从0开始。操作元素完成可以通过编号(索引)完成。角标是从0到arr.length-1。

           Eg. int [] arr = new int[3];通过new关键字创建了一个长度为3的数组,存放的是int类型的数。

         c.这里谈到了数组,就有必要了解一下JAVA对内存的划分:

         分为5个部分:栈,堆,方法区,本地方法区,寄存器。

                   栈内存:存储都是局部变量。只要是在方法中定义的变量都是具备变量。一旦变量的生命周期结束该变量就被释放。

        堆内存:存储都是实体(对象),每一个实体都有一个首地址值。堆内存的变量都有默认初始化值。不同类型不一样。int-0  double-0.0  boolean-false char-'\u0000'(u:Unicode)

         d.数组中常见的两种异常:

                   ① ArrayIndexOutOfBoundsException:访问到了数组不存在的索引时,会发生该异常。

                   ② NullPointerException:当使用没有任何实体指向的引用变量操作实体时,运行会发生该异常。

         e.小案例:一个数组,想要知道最大的值是哪个?

public static int test4(int[] arr) {

      //第一种方法:

int max = arr[0];

      for (int i = 1; i < arr.length; i++) {

        if(max<arr[i]){

           max = arr[i];

        }

      }

      return max;

      //第二种方法

      int max = 0;

      for(int i=1;i<arr.length;i++){

        if(arr[max]<arr[i]){

           max=i;

        }

      }

      return arr[max];

   }

PS:万事开头难,既然开头了,那就贵在坚持了!!!

0 0