欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

泛型——堆栈输出数列若干项

程序员文章站 2024-03-15 10:56:23
...
import java.util.*;
public class Test1 {
	public static void main(String args[]) {
		Stack<Integer> stack = new Stack<Integer>();
		stack.push(new Integer(8));
		stack.push(new Integer(3));
		System.out.println("第1项:3");
		System.out.println("第2项:8");
		int k = 1;
		while(k <= 10) {
			for(int i=1; i<=2; i++) {
				Integer F1 = stack.pop();
				int f1 = F1.intValue();//此方法返回该对象转换为int类型后表示的数值
				Integer F2 = stack.pop();
				int f2 = F2.intValue();
				Integer temp = new Integer(2*f1 + 2*f2);
				System.out.println("第"+(k+2)+"项:"+temp.toString());
				stack.push(temp);
				stack.push(F2);
				k++;
			}
		}
	}
}

1、泛型类创建堆栈对象
Stack stack = new Stack();(其中Integer是类,对int数据进行操作,类似String)
2、利用压栈操作push获得数组前几项stack.push(new Integer(8));
注意先后顺序,先二后一,且参数只能为Integer类创建的对象
3、弹栈读取数值,intValue()已经介绍
Integer F1 = stack.pop();
int f1 = F1.intValue();
4、利用数组递推公式反复执行栈操作
Integer temp = new Integer(2f1 + 2f2);
stack.push(temp);
stack.push(F2);(先进后一项,再进前一项)

相关标签: java java