排序,反转类继承简单数组类

class Array {
	private int data[];
	private int foot;

	public Array(int ten) {
		if (ten > 0) {
			this.data = new int [ten];
		} else {
			this.data = new int [1];
		}
	}
	public boolean add(int num) {
		if ((this.foot) < (this.data.length)) {
			this.data[this.foot++] = num;
			return true;
		}
		return false;
	}
	public int [] getData() {
		return this.data;
	}
}
 //开发排序子类
class SortArray extends Array {
	public SortArray(int ten) {
		super(ten);//父类中没有无参构造,所以用super关键字让父类调用有参构造首先进行实例化
	}
	//由于父类取得数组的方法无法满足子类取得数组方法的要求
	//所以利用方法的覆写
	public int [] getData() {
		java.util.Arrays.sort(super.getData());
		return super.getData();
	}
}

//开发反转子类
class ReverseArray extends Array {
	public ReverseArray(int ten) {
		super(ten);
	}
	public int [] getData() {
		int ten = super.getData().length / 2;
		int head = 0;
		int tail = super.getData().length - 1;
		for (int x = 0; x < ten; x++) {
			int temp = super.getData()[head];
			super.getData()[head] = super.getData()[tail];
			super.getData()[tail] = temp;
			head++;
			tail--;
		}
		return super.getData();
	}
}
	



public class TestDemo {
	public static void main(String[] args) {

		Array arr = new Array(3);
		SortArray arra = new SortArray(3);
		ReverseArray arrb = new ReverseArray(3);
		
		arr.add(10);
		arr.add(6);
		arr.add(7);
		int tempA[] = arr.getData();
		System.out.println("顺序输出");
		for (int x = 0; x < tempA.length; x++) {
			System.out.println(tempA[x] + ",");
		}

		arra.add(10);
		arra.add(6);
		arra.add(7);
		int tempB[] = arra.getData();
		System.out.println("排序输出");
		for (int x = 0; x < tempB.length; x++) {
			System.out.println(tempB[x] + ",");
		}

		arrb.add(10);
		arrb.add(6);
		arrb.add(7);
		int tempC[] = arrb.getData();
		System.out.println("转置输出");
		for (int x = 0; x < tempC.length; x++) {
			System.out.println(tempC[x] + ",");
		}

	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值