一、数组
数组的概念:可以存储多个同一种数据类型的元素集合.可以存储基本数据类型,也可以存储引用数据类型.
1.数组的格式:
数据类型[] 数组名 = new 数据类型[数组的长度];
1)动态初始化:
int[] array = new int[5];
2)静态初始化:
int[] array = new int[]{1,2,3,4,5};
2.栈与堆(方法区,本地方法区,寄存器,面向对象讲解)
1)栈:存储局部变量
2)堆:存储new出来的数组或对象
3.遍历数组
1)什么是遍历数组: 依次输出数组中的每个元素.
2)获取数组长度: 数组名.length
3)获取数组的最大下标值: 数组名.length-1
4.数组反转
1)什么是数组反转: 就是把数组中的元素对调.
5.获取最大或最小值
6.数组的查表法
例;输入相应的数字,输出对应的星期.
7.查找元素
查找指定元素第一次在数组中出现的索引.
二、二维数组
1.二维数组的格式:
1)数据类型[][] 数组名 = new 数据类型[x][y];
2)数据类型[] 数组名[] = new 数据类型[x][y];
2.遍历二维数组
循环嵌套()for)
1)外层循环控制二维数组的长度,也就是一位数组的个数.
数组的概念:可以存储多个同一种数据类型的元素集合.可以存储基本数据类型,也可以存储引用数据类型.
1.数组的格式:
数据类型[] 数组名 = new 数据类型[数组的长度];
1)动态初始化:
int[] array = new int[5];
2)静态初始化:
int[] array = new int[]{1,2,3,4,5};
2.栈与堆(方法区,本地方法区,寄存器,面向对象讲解)
1)栈:存储局部变量
2)堆:存储new出来的数组或对象
3.遍历数组
1)什么是遍历数组: 依次输出数组中的每个元素.
class Test1_Array { public static void main(String[] args) { int[] arr = {11,22,33,44,55}; for(int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } } }
2)获取数组长度: 数组名.length
class Test1_Array { public static void main(String[] args) { int[] arr = {11,22,33,44,55}; System.out.println(arr.length); } }
3)获取数组的最大下标值: 数组名.length-1
4.数组反转
1)什么是数组反转: 就是把数组中的元素对调.
class Test2_Array { public static void main(String[] args) { int[] arr = {-55,-22,-33,-11,-66,-44}; int max = getMax(arr); System.out.println(max); } public static int getMax(int[] arr) { int max = arr[0]; for (int i = 1;i < arr.length ;i++ ) { if(arr[i] > max) { max = arr[i]; } } return max; } }
5.获取最大或最小值
class Test{ public static void main(String[] args){ int[] Array123 = {11,55,999,888,123,654,753,951,456,958,745,11226,23,65,74,159}; int max = getMax(Array123); System.out.println(max); int min = getMin(Array123); System.out.println(min); } //获取最大值 public static int getMax(int[] array){ int max = array[0]; for(int i = 1;i < array.length;i++){ if(array[i] > max){ max = array[i]; } } return max; } 获取最小值 public static int getMin(int[] array){ int min = array[0]; for(int i = 1;i < array.length;i++){ if(array[i] < min){ min = array[i]; } } return min; } }
6.数组的查表法
例;输入相应的数字,输出对应的星期.
import java.util.Scanner; class Test1 { public static void main(String[] args) { //输入相应的数字,输出对应的星期. char[] array = {' ','一','二','三','四','五','六','日'}; Scanner scanner = new Scanner(System.in); System.out.println("请输入一个1~7的数字:"); int num = scanner.nextInt(); System.out.println(array[num]); } }
7.查找元素
查找指定元素第一次在数组中出现的索引.
class Test3 { public static void main(String[] args) { int[] nums = {11,22,33,44,55}; int index = print(nums,44); System.out.println(index); } public static int print(int[] array,int value){ for (int i = 0;i < array.length ;i++ ){ if(array[i] == value){ return i; } } return -1; } }
二、二维数组
1.二维数组的格式:
1)数据类型[][] 数组名 = new 数据类型[x][y];
2)数据类型[] 数组名[] = new 数据类型[x][y];
2.遍历二维数组
循环嵌套()for)
1)外层循环控制二维数组的长度,也就是一位数组的个数.
2)内层循环控制一位数组的长度.
class Test2 { public static void main(String[] args) { int[][] nums ={{1,2,3},{4,5,6}}; for(int i = 0;i < nums.length;i++){ for(int j = 0;j < nums[i].length;j++){ System.out.print(nums[i][j]); } } } }