编写一个java程序:利用继承实现MyStack,创建一个继承自ArrayList的新的栈类,编写测试程序,提示用户输入5个字符串,然后以逆序显示这些字符串
时间: 2024-01-19 20:03:43 浏览: 101
好的,这个问题我可以回答。以下是Java程序,包括MyStack类和测试程序:
```
import java.util.ArrayList;
class MyStack extends ArrayList<String> {
public void push(String str) {
this.add(str);
}
public String pop() {
if (this.isEmpty()) {
return null;
}
int lastIndex = this.size() - 1;
String str = this.get(lastIndex);
this.remove(lastIndex);
return str;
}
}
public class TestMyStack {
public static void main(String[] args) {
MyStack stack = new MyStack();
for (int i = 0; i < 5; i++) {
System.out.print("请输入第" + (i + 1) + "个字符串:");
String str = System.console().readLine();
stack.push(str);
}
System.out.println("\n逆序显示这些字符串:");
while (!stack.isEmpty()) {
String str = stack.pop();
System.out.println(str);
}
}
}
```
程序中的MyStack类继承自ArrayList类,并添加了push和pop方法,实现了栈的基本操作。测试程序首先提示用户输入5个字符串,然后将这些字符串依次压入栈中。最后,通过pop方法逆序取出并显示这些字符串。
阅读全文