JAVA笔记整理2

42 函数的定义


函数就是方法一个小程序(特定功能),函数就是方法

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

      执行语句;

      return  返回值;

static静态

1、)函数只有被调用才会被执行

public static int getResult(int num){

return num*3+5;

}

特点a)功能代码封装 b)提高复用性 c)函数调用才执行 d)函数的出现提高复用性

函数没有返回值,就没有返回值类型;

2、)当函数运算后,没有具体的返回值时,这时返回值类型用特别关键字来标示(void)

public static void getRestult(int num){

System.out.println(num*3+5);

}

3、)当函数返回类型为void,return可以不写

注意:1.只能调用,不能在函数内部定义函数;2.定义函数时,函数的结果应该返回给调用者,交由调用者处理;


43 函数的应用

如何定义函数。 --------(功能是功能,实现时调用者的事情)-----

1.函数是一个独立的功能(明确返回值类型),那么该功能的运算结构是什么先明确;

2.在明确在定义改功能的过程中是否需要未知的内容参与运算,明确函数的参数列表(参数类型和参数个数)

函数书写:

如果返回函数有void,主函数不能直接输出方法,直接调用;(返回语句没有具体的值,打印语句不知道什么)

public static void getSum(int a,int b){system.out.println(a+b);}     错误

public static int getSum(int x,int y){return x+y;}      正确

函数练习

public static void draw(int row,int col){

      for(int x=0;x

               for(int y=0;y

                        System.out.print("*");

                }

         System.out.println();

}

函数要有入口

45 函数(重载)-----跟函数列表有关系;

重载的概念:同一个类中,允许存在一个以上的同名函数,只要它们的参数个数或者参数类型不可即可;

实例   int  add

功能一样用重载:

当定义功能相同,但参与运算的未知内容不同,可以调用函数,重载跟返回类型没有关系

46 重载练习(函数)

void show(int a,char b,double c)   函数

void show(int x,char y,double z)   错

int show(int a,double b,char c)     对      参数类型不同

void show(int a,double b,char c)    对   返回值类型没关系

boolean show(int c,int d)    对   参数个数

void show(int c)     对   参数个数

double show(int x,char y,double z)   错   没有这个函数和给定函数存在一个类中;

47 数组的定义(存数据的一种方式)

概念:同一种类型数据的集合,数组就是一个容器;

1.元素类型[]  数组名=new 元素类型[元素个数或数组长度]

int[] arr=new int[5]

2.元素类型[] 数组名 =new 元素类型{元素 1,元素 2、、、}

int[]  arr=new int[]{3,5,1,7}

int[] arr={1,2,3,5,7}

数组的好处:自动给数组的元素从0开始编号,方便操作这些元素

栈自动存放   堆是垃圾回收

两个引用指向同一个数组

实例1:

int[]  x=new int[3];

int[] y=x;

y[1]=89;

x[1]=?????      =====>89

实例2:

int a=5;   int b=a;   b=8;  则a=???   ====>5

只有数组为new 内存开一个新的空间;

48数组(静态初始化--常见问题)

int[] arr=new int[2]; 建这样写

int[] arr =new int[]{3,1,6,5,4}    用“{}”标示数组的内容;

int[] arr ={3,1,6,5,4}    ======>明确

int[] arr=new int[5]    =======>不明确

ArrayIndexOutOfBoundsException    数组角标越界

NullPointerException   空指针异常,当引用没有任何指向值为“null”的情况,该引用还在操作实体;

49数组(常见操作-->遍历)

int[] arr =new int[3];

for(int x=0;x<3;x++){S.o.p("arr["+x+"]="+arr[x]+";")};

数组中有一个属性可以直接获取到数组元素个数“数组名称.length”;

数组输出:-->比较规范

有数组的时候通常用for循环

public static void printArry(int[] arr){

    System.out.println("[");

   for(int 0;x

        if(x!=arr.length-1)

              System.out.println(arr[x]+", ");

       else

            System.out.println(arr[x]+"]");

    }

}

你可能感兴趣的:(JAVA笔记整理2)