/*
A.数组的概念:
数组是存储同一种数据类型多个元素的集合,也可以看成是一个容器.
数组既可以存储基本的数据类型,也可以存储引用数据类型.
B.数组定义格式:
数据类型[] 数组名 = new 数据类型[数组的长度]
C.什么是数组的初始化
就是为数组开辟连续的内存空间,并为每个数组元素赋值
D.如何对数组进行初始化
1.动态初始化 只是指定长度,由系统给出初始化的值
int [] arr = new int[5];
2.静态初始化 给出初始化的值,由系统决定长度
数据类型 [] 数组名 = new 数据类型[] {元素};
简化:数据类型 [] 数组名 = {元素};
E.各类型动态初始化默认初始值
整数类型:byte,long,int,short 默认的初始化值都是0
浮点类型:float,double默认初始化值都是0.0
布尔类型:初始化值为false
字符类型:char默认初始化值是’\u0000’
F:A:栈
存储局部变量
局部变量:定义在方法声明上和方法中的变量
B:堆
存储new出来的数组或者对象
C:方法区
面向对象部分
D:本地方法区
和系统相关
E:寄存器
给CPU使用
//数组不允许动静结合
*/
class Demo1_Array {
public static void main(String[] args) {
int [] arr = new int[5]; //动态初始化,在内存中开辟连续的空间
System.out.println(arr[0]);//系统给出初始化的值,int类型都是0
/*
[]:代表数组,有几个就是几维数组
new:创建新的实体或者对象
*/
}
}
2.实例
/*
数组的遍历:依次输出数组中的每一个元素
数组的属性:arr.length数组的长度
数组的最大索引:arr.length - 1
*/
import java.util.Scanner;
class Demo1_Array {
public static void main(String[] args) {
int [] arr = new int[5];
Scanner sc = new Scanner(System.in);
for(int i=0;i < arr.length;i++) {
arr[i] = sc.nextInt();
}
for(int i = 0;i < arr.length;i++) {
System.out.println("第" + i + "个索引元素是" + arr[i]);
}
}
}
/*
数组获取最值(最大值最小值)
*/
import java.util.Scanner;
class Demo1_Array {
public static void main(String[] args) {
int [] arr = new int[5];
Scanner sc = new Scanner(System.in);
for(int i=0;i < arr.length;i++) {
arr[i] = sc.nextInt(); //给数组的每一个元素赋值
}
int mx,mi;
mx = max(arr);
mi = min(arr);
System.out.println("MAX = " + mx);
System.out.println("MIN = " + mi);
}
public static int max(int [] arr) {
int temp = arr[0];//存放遍历到的最大值
for(int i = 1;i < arr.length;i++) {
if(temp < arr[i])
temp = arr[i];
}
return temp;
} //获取数组中的最大值
public static int min(int [] arr) {
int temp = arr[0];//存放遍历到的最大值
for(int i = 1;i < arr.length;i++) {
if(temp > arr[i])
temp = arr[i];
}
return temp;
}//获取数组中的最小值
}
/*
数组的反转
*/
import java.util.Scanner;
class Demo1_Array {
public static void main(String[] args) {
int [] arr = new int[5];
Scanner sc = new Scanner(System.in);
for(int i = 0;i < arr.length;i++) {
arr[i] = sc.nextInt();
}//数组初试化赋值
System.out.println("输出初始化后的数组值");
for(int j = 0;j < arr.length;j++) {
System.out.println(arr[j]);
}
inversion(arr);//调用方法
System.out.println("输出反转后的数组的值");
for(int j = 0;j < arr.length;j++) {
System.out.println(arr[j]);
}
}
///
public static void inversion(int [] arr) {
int temp;
for(int i = 0;i < arr.length/2;i++) {
temp = arr[i];
arr[i] = arr[arr.length -1 - i];
arr[arr.length -1 - i] = temp;
}
}//反转数组
}
/*
A.二维数组格式
int [][] arr = new int[m][n];
*/
class Demo1_Array {
public static void main(String[] args) {
int [][] arr = new int[2][2];
}
}