您的位置:首页 > 编程语言 > Java开发

java—数组(上)

2015-11-20 23:27 295 查看
java -数组的应用

一维数组

1.数组的定义:

存储多个同一类型元素的容器。

2.数组的格式:

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

3.特点:

数组在内存中是一块连续的内存空间,数组中的每一个元素都有一个编号,从0开始到arr.length-1(arr.length-1是指数组中的长度)。

4.什么是数组的动态初始化?

动态初始化是指在定义数组后,数组里面元素默认的初始化值,如下:

整数类型:byte, short, int, long,默认为0;

浮点类型:float, double 默认0.0

布尔类型:boolean 默认false

字符类型:char 默认’\u0000’

<注:’\u0000’是转义字符加上四个0000,两个字节的十六进制位,所以0000代表的是十六个二进制位。>

5.栈和堆

(1)什么是栈?有什么特点?

存储局部变量(定义在方法声明上和方法中的变量)。

特点:先进后出。
方法的调用压栈,执行完毕后就会从内存中弹栈。
**注意:当调用方法结束后,会弹栈,栈中的局部变量随之消失**!

(2)什么是堆?
存储中new出来的对象或数组(默认初始化值)。


两个异常:

A: ArrayIndexOutOfBundsException 数组索引越界异常

B: NullPointerException 空指针

数组中的方法

A遍历:

public static void printArray(int[] arr) {
for (int i = 0; i <= arr.length - 1; i++) {
System.out.println(arr[i]);
}
}


B最值:


public static int getMax(int[] arr) {
int max = arr[0];
for (int i = 1; i < arr.length; i++) {
if (max < arr[i]) {
max = arr[i];
}
}
return max;
}


C翻转:

public static void reverseArray(int[] arr) {
for (int i = 0; i < arr.length/2; i++) {
int temp = arr[i];
arr[i] = arr[arr.length-1-i];
arr[arr.length-1-i] = temp;
}
}


D查表法,根据值查索引(待续)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java