学习数组的一些小收获
今天我们对画图板进行了一些优化的学习,但在这过程中我们遇到了了一些问题,就是在现有的画图板上,如果我们在上面进行了画图,当我们把画图板进行了最小化或者拉长之后会发现之前在画图板上画的图消失了,这很显现是我们需要解决的问题。如何能够使我们画的图不会在最小化或者是拉长画板之后仍然不会消失呢,于是,数组能够帮助我们解决这个问题。数组的作用是对同一类型的数据进行存储,这里的关键是同一类型,不能对其他的类型进行存储,对数据的访问是具名访问,可直接读出数据中某一块的数据。但我们在对数组进行使用时,还要注意一个问题,就是不能越界,例如:int Array【5】={1,2,3,4,5},如果我们想访问array【5】就是越界了,因为数组的下标是从零开始的,这里最大只能访问到array【4】。在画图板的上的使用大概是使用两个数组,一个用来调用,另外一个用来新建数组。虽然我对数组的认识暂时只有那么多了,而且在具体的使用上也还不怎么会,我要继续坚持学习,相信肯定会有进步的。
public class MyList {
private int[] srcArray = new int[0];
//输出元素的方法
public void print(){
for(int i=0;i<srcArray.length;i++){
System.out.print(srcArray[i]+" ");
}
}
//在数组的最后添加元素的方法
public void add(int elements)
{
int[] destArray = new int[srcArray.length+1];
for(int i=0;i<srcArray.length;i++)
{
destArray[i] = srcArray[i];
}
destArray[srcArray.length] = elements;
srcArray = destArray;
}
//往指定元素之后添加元素的方法
public void add(int index,int elements){
int[] destArray = new int[srcArray.length+1];
//保存插入元素之前的元素
for(int i=0;i<index;i++){
destArray[i] = srcArray[i];
}
//保存插入之后的元素
for(int i=index+1;i<destArray.length;i++)
{
destArray[i] = srcArray[i-1];
}
//将元素插入
destArray[index] = elements;
srcArray = destArray;
}
//删除最后一个元素的方法
public void delete()
{
int[] destArray = new int[srcArray.length-1];
for(int i=0;i<destArray.length;i++)
{
destArray[i] = srcArray[i];
}
srcArray = destArray;
}
//删除指定位置的元素
public void delete(int index)
{
int[] destArray = new int[srcArray.length-1];
//保留删除元素之前的元素
for(int i=0;i<index-1;i++)
{
destArray[i] = srcArray[i];
}
//保留删除元素之后的元素
for(int i=index-1;i<destArray.length;i++)
{
destArray[i] = srcArray[i+1];
}
srcArray = destArray;
}
//查询指定位置的元素
public void query(int index)
{
System.out.println("第"+index+"个元素为:"+srcArray[index-1]);
}
//修改指定位置的元素
public void edit(int index,int elements)
{
srcArray[index-1] = elements;
}
}