牛骨文教育服务平台(让学习变的简单)
博文笔记

长度可变数组(java)

创建时间:2017-12-07 投稿人: 浏览次数:771

7-3 长度可变数组(30 分)

本题目要求定义一个长度可变的整型数组IntArray,数组初始长度为5,当输入的数组元素个数超过数组长度时,数组就自动增加5个元素的容量,即数组长度增加5。IntArray类要有得到数组实际长度的方法getLength(),添加数组元素的方法addElement(int)(参数为数组元素的值),得到数组元素的方法getElement(int)(参数为数组元素的下标),以及构造方法等。输入时,首先输入要输入数组元素的个数,然后输入各个数组元素。最后输出数组各个元素及数组的实际长度。

输入格式:

输入在一行中给出数组元素的个数和各个数组元素。

输出格式:

对每一组输入,在一行中输出数组各个元素的值和数组的实际长度。

输入样例:

在这里给出一组输入。例如:

4 1 2 3 4

输出样例:

在这里给出相应的输出。例如:

1 2 3 4 length=4

import java.util.Scanner;
import java.util.ArrayList;
class kebianshuzu1{
	int length,size=5, i=0;
	int[] IntArray=new int[5];
	public void addElement(int  num)
	{	
	    IntArray[i++]=num;
        if(i>=size)
        {
        	size+=5;
            int[] newdata = new int[size];
            for(int j = 0;j<IntArray.length; j++)
                newdata[j] = IntArray[j];
             IntArray=newdata;
             length=IntArray.length;
        }
	}
	public void getElement(int i)
	{
		 System.out.print(IntArray[i]+" "); 
	}
	
}
public class Main{
 public static void main(String[] args) {
	 Scanner in =new Scanner(System.in );
	 int length=in.nextInt();
	 int i;
	 kebianshuzu1 a=new kebianshuzu1();
	 for(i=0;i<length;i++)	
		{
			a.addElement(in.nextInt());
		}
		for(i=0;i<length;i++)	
		{
			a.getElement(i);
		}
		 System.out.print("length="+length); 
 }
}


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。