java集合框架:淺談如何使用LInkedList實現隊列(Queue)和堆棧(Stack)
阿新 • • 發佈:2018-10-08
ets pop pri ring uname tac print str sys Java中的LinkedList?是采用雙向循環列表實現的。
利用LinkedList?可以實現棧(stack)、隊列(queue) quene.push(new Student(3,"學生3",23));
for (Object object : quene.lists) {
Student student = (Student)object;
System.out.println(student.toString());
}
System.out.println("在隊列中刪除對象");
quene.pop();
for (Object object : quene.lists) {
Student student = (Student)object;
System.out.println(student.toString());
}
利用LinkedList?可以實現棧(stack)、隊列(queue)
下面寫兩個例子
學生類:
int stuId;
public int getStuId() { return stuId; } public void setStuId(int stuId) { this.stuId = stuId; } public String getStuName() { return stuName; } public void setStuName(String stuName) { this.stuName = stuName; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } String stuName; int age; public Student(){ } public Student(int stuId,String stuName,int age){ this.age = age; this.stuId = stuId; this.stuName = stuName; } public String toString() { return ("學生姓名:"+this.stuName+"學生年齡"+this.age+"學生編號"+this.stuId); }
隊列
自定義方法實現LInkedList
LinkedList lists =new LinkedList();
public void push(Object object){
lists.addLast(object);
}
public Object pop(){
return lists.removeFirst();
}
實現方法
System.out.println("在隊列中添加對象");
MyQuene quene = new MyQuene();
quene.push(new Student(1,"學生1",20));
quene.push(new Student(2,"學生2",21));
for (Object object : quene.lists) {
Student student = (Student)object;
System.out.println(student.toString());
}
System.out.println("在隊列中刪除對象");
quene.pop();
for (Object object : quene.lists) {
Student student = (Student)object;
System.out.println(student.toString());
堆棧:
自定義方法,並實現
LinkedList lists =new LinkedList();
public void push(Object object){
lists.addFirst(object);
}
public Object pop(){
return lists.removeLast();
}
System.out.println("在隊列中添加對象");
MyStack Stack = new MyStack();
Stack.push(new Student(1,"學生1",20));
Stack.push(new Student(2,"學生2",21));
Stack.push(new Student(3,"學生3",23));
for (Object object : Stack.lists) {
Student student = (Student)object;
System.out.println(student.toString());
}
System.out.println("在隊列中刪除對象");
Stack.pop();
for (Object object : Stack.lists) {
Student student = (Student)object;
System.out.println(student.toString());
}
java集合框架:淺談如何使用LInkedList實現隊列(Queue)和堆棧(Stack)