java作业 如何给一个数组动态赋值

Python027

java作业 如何给一个数组动态赋值,第1张

//这里提供下实现思路,不保证高效,如果想看高效的实现方式,可以看看ArrayList的实现源码

//数组

int [] is=new int[1]

//标记数组的非空长度

int size=0

public int [] add(int t){

    //如果数据长度大于等于数组长度,则扩充数组

    if(size>=is.length){

        //每次扩充10个长度

        int [] temp=new int[size+10]

        //将is的数据拷贝到临时数组中

        for(int i=0i<is.lengthi++){

            temp[i]=is[i]

        }

        is=temp

    }

    //给数组赋值

    is[size++]=t

     

}

import java.util.Scanner

public class Test {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in)

System.out.println("请输入创建的数组的大小: ")

int size = sc.nextInt()

int[] a = new int[size]

System.out.println("手动为每个数组元素赋值: ")

for(int i = 0 i < size i++){

a[i] = sc.nextInt()

}

System.out.println("动态创建的数组为: ")

for(int i = 0 i < size i++){

System.out.print(a[i] + "  ")

}

}

}