说明:仅仅用于备考,转载注明。
继续分析案例( ArrayList类中 ):小型电影DVD在线销售系统需要增加新的功能,如下:
- 能够添加销售冠军电影DVD对象
- 能够删除销售最后一名的电影DVD对象
方法:
- 使用LinkedList类提供的方法完成功能 :
- 添加销售冠军、以及销售最后一名的电影DVD对象
- 获取销售冠军、以及销售最后一名的电影DVD对象
- 删除销售冠军、以及销售最后一名的电影DVD对象
实质我感觉像在头尾操作的双向队列。
package aaa;
import java.awt.List;
import java.sql.Date;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Scanner;
public class Main{
public static void main(String[] args){
// 创建电影 DVD 对象
Movie m1 = new Movie(1,"成龙历险记",888);
Movie m2 = new Movie(2,"最后的夜晚", 999);
// 创建 LinkedList 对象
LinkedList movList = new LinkedList();
//调用 addFirst 方法添加销售冠军电影 DVD 对象
movList.addFirst(m1);
//调用 addLast 方法添加销售最后一名的电影的 DVD 对象
movList.addLast(m2);
//调用 getFirst 方法得到第一个
Movie first = (Movie) movList.getFirst();
System.out.println("冠军:" first.getMovieName());
//调用 getLast 方法得到最后一个
Movie last = (Movie) movList.getLast();
System.out.println("最后一名: " last.getMovieName());
// 调用 removeFirst 和 removeLast 分别删去第一个和最后一个
movList.removeFirst();
movList.removeLast();
System.out.println("剩下的电影的数量 " movList.size());
}
}
class Movie{
private int movieID;
private String movieName;
private double price;
public Movie(int movieID, String movieName, double price){
this.movieID = movieID;
this.movieName = movieName;
this.price = price;
}
public int getMovieID(){
return movieID;
}
public String getMovieName(){
return movieName;
}
}