【Java学习笔记】方法和数组

回顾:

A:1)方法(函数:javascript):

完成一个功能的独立代码块!

  2)如何定义方法:

格式:修饰符:public(权限修饰符) static(静态修饰符) 返回值类型 方法名(参数类型1 参数名1,参数类型2 参数名2..){

return 具体结果;

}

返回值类型:数据类型:暂时基本数据类型!(面向对象:返回值类型可以是:/抽象类/接口)

方法名:给这个独立的代码块起一个名称:方法命名规范.

参数类型:数据类型

参数名:变量名

举例:求和:

public static int sum(int a, int b){

return a+b ;

}

方法的注意事项:

1)方法和方法是平级关系.

2)main()中调用一个方法,里面的参数不用在跟数据类型!

3)有左{括号的地方不能有分号,有分号的地方不能有左{;

4)方法不调用不执行,采用赋值调用!

没有返回值类型的方法:没有具体的返回值类型,void

在控制台输出:*/ 99乘法表/或者一些直接在控制台打印的,都是属于没有返回值类型的方法!

   3)方法重载:

overload:在同一个类中,方法名相同,参数列表不同,与返回值类型没有关系!

参数列表不同:

(1):参数类型不同

(2):参数个数不同

B:数组:

1)java中为了提高程序的执行效率,分为以下5个内存:

(1)栈内存:存储的是局部变量:在方法声明上,或者在方法定义中

(2)堆内存:new 出来对象:Scanner sc = new Scanner(System.in);也可以存储成员变量

(3)方法去:包括一些字节码文件区域:class,静态区域:static String:字符串常量池

(4)本地方法区:跟系统有关系

(5)寄存器:cpu

2)数组:可以存储同一种数据类型元素的容器------------------>javaSE高级特性:集合:容器

3)如何定义一个数组:

数据类型[] 数组名:推荐使用

数据类型  数组名[]

4)数组的初始化:

1)动态初始化:给定了数组长度,元素值有系统给定:int :0 double:0.0 ; boolean :false

2)静态初始化:给定数组的元素,长度有系统默认给定

5)动态初始化的定义格式:

数据类型[] 数组名  = new 数据类型[数组长度] ;

int[] arr = new int[2] ;

获取数组的元素:数组名称[索引:0开始],最大索引:数组长度-1;

6)静态初始化的定义格式:

数据类型[] 数组名 = {元素1,元素2,元素3} ;

int[] arr = {1,2,3} ;

注意:

数组的初始化不能动静结合:错误的!

int[] ar = new int[3]{1,2,3} ; 错误的!

数组中的属性:length:数组长度

面试题:集合中有没有length属性,String中有没有length属性,数组中有没有length属性

7)数组的应用:

(1):遍历数组

int[] arr = [1,2,3] ;

public static void printArray(int[] arr){

System.out.print("[");

for(int x = 0 ; x < arr.length;x++ ){

if(x==arr.length-1){

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

}else{

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

}

}

}

(2):求数组中的最值问题(最大值/最小值):使用方法改进!

1)定义一个数组:静态初始化!

2)将数组中第一个元素作为参照物:int max = arr[0] ;

3)遍历其他元素,让其他元素分别和arr[0]进行比较,如果arr[x]>max ;

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

if(arr[x] > max){

max = arr[x] ;

}

}

(3):数组中的元素逆序(元素反转):保证数组的长度:arr.length/2

(4):数组元素查表法

(5):查找数组中的元素在数组中第一次出现的索引值!

如果查不到就返回-1;

C:数组中常见的两个异常:

Exception:异常类:

编译时期异常:

运行时期异常:RuntimeException

数组角标越界异常:ArrayIndexOutOfBoundsException:

访问不存在数组的索引!

空指针异常:NullPointerException 解决方案:非空判断

对象是空的,但是还要访问这个对象!

你可能感兴趣的:(【Java学习笔记】)