好的,我想了好半天,做了一个这样的,你看看是不是很啰嗦:
/**
(1)定义一个int类型的一维数组,内容为{6,2,9,6,1,2,6,7,8}
(2)去除上面定义的数组中的重复元素,打印最终结果{6, 2, 9, 1, 7, 8}
*/
class Demo_Array {
public static void main(String[] args) {
int [] arr = {6,2,9,6,1,2,6,7,8};
MyArray aa = new MyArray(); //实例化对象
for (int i=0;i<arr.length ;i++ ){
aa.addArrayData(arr);
}
for(int i = 0;i<aa.getSize();i++){
System.out.print(aa.getArray(i)+" ");//输出容器内指定数据
}
System.out.println();
}
}
class MyArray{
private int [] array = new int [0]; //创建一各数组,长度为0
private int size; //数组的大小
public int getArray(int num){ //获取数组指定交表的元素
return array[num];
}
public int[] getArray(){ //获取数组
return array;
}
public int getSize(){ //获取数组大小
return size;
}
/**
向数组中添加元素
*/
public void addArrayData(int num){
if (this.isEquals(num)){
/**定义一个新数组,用来接收和数组中不相同的元素*/
int[] newArray = new int[this.array.length+1];
for(int i = 0;i<this.array.length;i++){
newArray = this.array;
}
newArray[newArray.length-1] = num;
this.size++;
this.array = newArray;
}else{
System.out.println(num+"是重复的数据,未被写入");
}
}
/**
判断是否为重复数组
*/
public boolean isEquals(int num) {
for(int i = 0;i<this.array.length;i++){
if(num == this.array){
return false;
}
}
return true;
}
}
|