数组
声明和创建
package com.arbedu.array;
public class ArrayDemo01 {
//变量类型 变量名字 = 变量的值
//数组类型 数组是相同数据类型的有序集合
public static void main(String[] args) {
int[] arr; //1.声明一个数组
arr = new int[10]; //2.创建一个数组 这里面可以存放10个int类型的数字
// int[] nums = new int[10]; 把1.2.合在一起也行
//3.给数组元素赋值
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
arr[3] = 4;
arr[4] = 5;
arr[5] = 6;
arr[6] = 7;
arr[7] = 8;
arr[8] = 9;
arr[9] = 10;
//计算所有数字的和
int sum = 0;
//获取数组长度 arrays.length
for (int i = 0; i < arr.length; i++) {
sum += arr[i];
}
System.out.println("总和:"+sum);
}
}
内存分析和三种初始化
Java内存分析:
1.堆:存放new的对象和数组
2.栈:存放基本变量类型
3.方法区
如果数组的下标(不可变)超出了arrays.length就会报错数组下标越界:ArrayIndexOutOfBoundsException
package com.arbedu.array;
public class ArrayDemo02 {
public static void main(String[] args) {
//1静态初始化
int[] a = {1,2,3,4,5,6,7,8,9};
System.out.println(a[0]);
// 2动态初始化:包含3默认初始化0、NULL
int[] b = new int[10];
b[0] = 10;
System.out.println(b[0]);
}
}
数组的使用
package com.arbedu.array;
public class ArrayDemo03 {
public static void main(String[] args) {
int[] arrays = {1, 2, 3, 4, 5};
//打印全部的数组元素
for(int i = 0; i < arrays.length; i++) {
System.out.println(arrays[i]);
}
System.out.println("========================");
//计算所有元素的和
int sum = 0;
for (int i = 0; i < arrays.length; i++) {
sum += arrays[i];
}
System.out.println("sum = " + sum);
System.out.println("================");
//查找最大元素
int max = arrays[0];
for (int i = 1; i < arrays.length; i++) {
if(arrays[i] > max) {
max = arrays[i];
}
}
}
}
-
for-each循环
-
数组方法入参
-
数组作为返回值
package com.arbedu.array;
public class ArrayDemo04 {
public static void main(String[] args) {
int[] arrays = {1, 2, 3, 4, 5};
//增强for快捷键:array.for 回车
for (int array : arrays) {
System.out.println(array); //取不到下标
}
System.out.println("===================");
printArray(arrays);
System.out.println("===================");
int[] reverseArray = reverseArray(arrays);
printArray(reverseArray);
}
//打印数组元素
public static void printArray(int[] array) {
for (int i = 0; i < array.length; i++) {
System.out.println(array[i] + " ");
}
}
//反转数组
public static int[] reverseArray(int[] array) {
int[] reversedArray = new int[array.length];
for (int i = 0, j = array.length - 1; i < array.length; i++, j--) {
reversedArray[j] = array[i];
}
return reversedArray;
}
}
多维数组
package com.arbedu.array;
public class ArrayDemo05 {
public static void main(String[] args) {
int[][] arrays = {{1,2}, {3,4}, {5,6}};
System.out.println(arrays[2][0]);
System.out.println(arrays[2][1]);
System.out.println("==============================");
//多维数组的遍历
for (int i = 0; i < arrays.length; i++) {
for(int j = 0; j < arrays[i].length; j++) {
System.out.println(arrays[i][j]);
}
}
}
}
&spm=1001.2101.3001.5002&articleId=146384294&d=1&t=3&u=524ae84a1d364841955f184dac4336f1)
932

被折叠的 条评论
为什么被折叠?



