数组概念及特点
数组的特点:
1:数组是一种引用数据类型
2:数组当中的多个数据,类型必须统一🙋
3:数组的长度在程序运行期间不可以更改
数组的两种初始化
两种常见的初始化方式:
1:动态初始化(指定长度)
2:静态初始化(指定内容)
动态数组初始化数组的格式;
数据类型[ ] 数组名称 = new 数据类型 [ 数组长度] ;
//动态数组创建
int[] arrayA = new int[300];
double[] arrayB = new double[10];
String[] arrayC = new String[5];
静态初始化
//静态初始化
int[] arrayA = new int[] {5,15,25};
String[] arrayB = new String[] {"Hello","World","Java"};
数组简单化
标准格式:
数据类型[ ] 数组名称 = new 数据类型 [ ] {元素1,元素2,…};
省略格式:
数据类型[ ] 数组名称 = {元素1,元素2,…}
注意事项
1:静态初始化没有直接长度,但是仍然可以会自动推算得到长度(也可以使用.length得到数组长度)
2:静态初始化标准化格式可以拆分为两个步骤
3:动态初始化也可以拆分为两个步骤
4:静态初始化一旦使用省略格式,就不能拆分未两个步骤了
Java的内存分为五个部分
数组举例内存变化
数组的常见错误
1.数组越界
数组没有初始化空指针异常
例子
//数组遍历
public static void main(String[] args) {
int[] array ={1,2,3,4,5,6,11,12,150};
int len = array.length;
for (int i = 0; i < len; i++) {
System.out.println(array[i]);
}
}
数组元素反转
//数组元素反转
public static void main(String[] args) {
int[] array = {1,2,3,4,5,6,7};
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
System.out.println("=================");
for (int min = 0,max = array.length-1;min < max ;min++,max--){
int temp = array[min];
array[min]=array[max];
array[max]= temp;
}
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
}
求数组中的最大值
public static void main(String[] args) {
//求数组中的最值
int[] array = {1, 2, 3, 4, 5, 6, 11, 12, 150};
int max = array[0];
for (int i = 1; i < array.length; i++) {
if (array[i] > max) {
max = array[i];
}
}
System.out.println(max);
}
调用数组
//方法调用,调用数组
public static void main(String[] args) {
int[] array = {1,2,3,4,5,6,7,8};
printarray(array);
}
public static void printarray (int[] array){
for (int i = 0; i < array.length; i++) {
System.out.println(array[i]);
}
}
数组返回值
//将数组作为返回值
public static void main(String[] args) {
int[] result = exercise(10,20,30);
System.out.println("总和"+result[0]);
System.out.println("平均数"+result[1]);
}
public static int[] exercise(int a ,int b, int c){
int sum = a+b+c;
int avg = sum/3;
int[] array = {sum,avg};
return array;
}
结果显示: