数组

数组的申明和创建

 数据类型[] 数组名 //定义

1.静态初始化 创建加赋值

int[] a={12,3,3,4,55};

2.动态初始化

int[] arr=new int[10];
  1. 数组是多个相同类型数据的组合,实现对这些数据的统一管理

  2. 数组中的元素可以是任何数据类型的,包括基本数据类型和引用类型,但是不能混用

  3. 数组创建后,如果没有赋值,则有默认值,int类型:0、short类型:0、byte类型:0、long类型:0、flaot类型:0.0、double类型:0.0、char类型:\u0000、boolean类型:false、String类型:null

  4. 使用数组的步骤 :1)声明数组并开辟空间2)给数组各个元素赋值3)使用数组

  5. 数组的下标是从0开始的使用数组

  6. 数组的下标必须在指定范围内使用,否则报:下标越界异常

  7. 数组属于引用类型,数组型数据是对象(object)

数组的值传递

基本的数据类型赋值,这个值就是具体的数据,而且相互不影响

数组在默认情况下是引用传递,赋的值是地址

数组的拷贝

在这里插入图片描述

public class ArrayExercise04{
	public static void main(String[] args){
		int[] arr1 = {11,22,33,44,55,66};
		int[] arr2 = new int[arr1.length];
		for(int i=0;i<arr1.length;i++){
			arr2[i] = arr1[i];
		}
		System.out.println("===arr2===");
		for(int i=0;i<arr2.length;i++){
			System.out.print(arr2[i] + " ");
		}
		arr2[0] = 99;
		System.out.println("\n" + "===修改后的arr2===");
		for(int i=0;i<arr2.length;i++){
			System.out.print(arr2[i] + " ");
		}
		System.out.println("\n==arr1==");
		for(int i=0;i<arr1.length;i++){
			System.out.print(arr1[i] + " ");
		}

	}
}

在这里插入图片描述

数组的添加

import java.util.Scanner;
public class ArrayAdd{
	public static void main(String[] args){
		int[] arr = {1,2,3,4};
		
		

		do{
			Scanner myScanner = new Scanner(System.in);
			System.out.println("键盘输入你想添加的数字:");
			int newArrNum = myScanner.nextInt();
			int[] newArray = new int[arr.length+1];
			for(int i=0;i<arr.length;i++){
				newArray[i] = arr[i];
			}
			newArray[newArray.length-1] = newArrNum;
			arr = newArray;
			System.out.println("###扩容后的arr数组为####");
			for(int i=0;i<arr.length;i++){
				System.out.print( arr[i]+ " ");
			}

			System.out.println();
			System.out.println("键盘输入是否继续执行?Y/N");
			char order = myScanner.next().charAt(0);
			if(order == 'N'){
				break;
			}

		}while(true);
		System.out.println("您已经停止添加数组元素了");
		
	}

}

数组的删减

/*
数组{1,2,3,4,5}进行缩减,提示用户是否继续进行缩减,当只剩下最后一个的时候,
提示不能再进行缩减。
*/
import java.util.Scanner;
public class ArrayReduce{
	public static void main(String[] args){
		int[] arr = {1,2,3,4,5};
	
		do{
			int[] newArray = new int[arr.length - 1];

			Scanner myScanner = new Scanner(System.in);
			
			for(int i=0;i<newArray.length;i++){
				newArray[i] = arr[i];	
			}
			arr = newArray;
			System.out.println("====删减后的arr数组====");
			for(int i=0;i<arr.length;i++){
				System.out.println(arr[i] + "\t");
			}
			System.out.println("请问是否还要进行缩减数组的操作?Y/N");
			char order = myScanner.next().charAt(0);
			if(order == 'N'){
				break;
			}
			if(arr.length==1){
				System.out.println("只剩下一个元素了,不允许进行删减元素了");
				break;
			}
		}while(true);

		
		
		


	}
}

多维数组

多维数据就是数组中包含数组

//二维数组的遍历
public class ArrayDemo03 {
    public static void main(String[] args) {
        int[][] arr={{1,2},{4,5},{6,7},{8,9}};
        for(int i=0;i<arr.length;i++){
            for(int j=0;j<arr[i].length;j++){
                System.out.print(arr[i][j]+" ");
            }
        }
    }
    public static void printArray(int[] arr){
        for(int i=0;i<arr.length;i++){
            System.out.println(arr[i]);
        }
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值