数组
1. 数组可以存放多个同一类型数据。数组也是一种数据类型,是引用类型。
即:数组就是一组数据。
快速入门数组
import java.util.Scanner;
public class ArrayTest {
public static void main(String[] args) {
double[] scores=new double[6];
Scanner sc = new Scanner(System.in);
for (int i = 0; i < scores.length; i++) {
System.out.print("请输入第"+(i+1)+"个人的成绩: ");
scores[i]=sc.nextDouble();
}
for (int i = 0; i < scores.length; i++) {
System.out.println("第"+(i+1)+"个人的成绩为: "+scores[i]);
}
}
}
数组的使用方式
使用方式1-动态初始化
1.数组的定义
数据类型 数组名[] =new 数据类型[大小]
int a[] = new int[5];//创建了一个数组,名字a,存放5个int
使用方式2-静态初始化
1. 初始化数组语法:
数据类型[] 数组名={元素值,元素值...}
知道数组有多少元素,具体值,使用静态初始化
public class ArrayTest {
public static void main(String[] args) {
double[] scores=new double[6];
Scanner sc = new Scanner(System.in);
for (int i = 0; i < scores.length; i++) {
System.out.print("请输入第"+(i+1)+"个人的成绩: ");
scores[i]=sc.nextDouble();
}
for (int i = 0; i < scores.length; i++) {
System.out.println("第"+(i+1)+"个人的成绩为: "+scores[i]);
}
}
}
细节
1. 数组是多个相同类型数据的组合,实现对这些数据的统一管理
2. 数组中的元素可以是任何数据类型,包括基本类型和引用类型,但是不能混用。
3. 数组创建后,如果没有赋值,有默认值int 0,short 0, byte 0, long 0, float 0.0,double 0.0,char \u0000,boolean false,String null
4. 使用数组的步骤 :1. 声明数组并开辟空间 2 .给数组各个元素赋值 3 .使用数组
5. 数组的下标是从0开始的。
6. 数组下标必须在指定范围内使用,否则报:下标越界异常,比如 int [] arr=new int[5]; 则有效下标为 0-4
7. 数组属引用类型,数组型数据是对象(object),数组中的每个元素相当于该对象的成员变量
class ArrayDetail{
}
数组的应用案例
char[] varg = new char[26];
for (int i = 0; i < varg.length; i++) {
varg[i] = (char) ('A' + i);
}
for (int i = 0; i < varg.length; i++) {
System.out.print(varg[i] + "\t");
}
***********************************************************************************************
int maxIndex=0;
Scanner sc = new Scanner(System.in);
int []arr=new int[5];
for (int i = 0; i < arr.length; i++) {
System.out.print("请输入第"+(i+1)+"个数据: ");
arr[i] = sc.nextInt();
}
int a[]={
1,2,3};
int max=arr[0];
for (int i = 1; i < arr.length; i++) {
if(arr[i]>max){
max=arr[i];
maxIndex=i;
}
}
System.out.println("max: "+max);
System.out.println("maxIndex :"+maxIndex);
数组复杂使用-赋值
1. 基本数据类型赋值,这个值就是具体的数据,而且相互不影响。
2. 数组在默认情况下是引用传递,即赋的值是地址。
int [] arr=new int[6]; //arr就是引用
引用赋值的图解与代码
public class ArrayApply
{
public static void main(String[] args) {
int[] arr1 = {
1,2,3};
int[] arr2 = arr1;
arr1[0] = 666;
System.out.println(arr1[0]);
System.out.println(arr2[0]);
}
}
数组拷贝(内容复制)图解与代码
public class ArrayCopy {
public static void main(String[] args) {
int[] arr= {
1,2,3,4,5,6};
int[] newArr=new int[arr.length];
for (int i = 0; i < newArr.length; i++) {
newArr[i]=arr[i];
}
arr[0]=100;