Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

use the programs to design and implement an application that maitains a collecti

ID: 3560362 • Letter: U

Question

use the programs to design and implement an application that maitains a collection of DVDs using a linekd list. in the main method of the driver class, add various DVDs to the collection and print the list when completement.

creat a inner class

//********************************************************************

// DVDCollection.java Author: Lewis/Loftus

//

// Represents a collection of DVD movies.

//********************************************************************

import java.text.NumberFormat;

public class DVDCollection

{

   private DVD[] collection;

   private int count;

   private double totalCost;

   //-----------------------------------------------------------------

   // Constructor: Creates an initially empty collection.

   //-----------------------------------------------------------------

   public DVDCollection()

   {

collection = new DVD[100];

count = 0;

totalCost = 0.0;

   }

   //-----------------------------------------------------------------

   // Adds a DVD to the collection, increasing the size of the

   // collection array if necessary.

   //-----------------------------------------------------------------

   public void addDVD(String title, String director, int year,

double cost, boolean bluRay)

   {

if (count == collection.length)

   increaseSize();

collection[count] = new DVD(title, director, year, cost, bluRay);

totalCost += cost;

count++;

   }

   //-----------------------------------------------------------------

   // Returns a report describing the DVD collection.

   //-----------------------------------------------------------------

   public String toString()

   {

NumberFormat fmt = NumberFormat.getCurrencyInstance();

String report = "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ";

report += "My DVD Collection ";

report += "Number of DVDs: " + count + " ";

report += "Total cost: " + fmt.format(totalCost) + " ";

report += "Average cost: " + fmt.format(totalCost/count);

report += " DVD List: ";

for (int dvd = 0; dvd < count; dvd++)

   report += collection[dvd].toString() + " ";

return report;

   }

   //-----------------------------------------------------------------

   // Increases the capacity of the collection by creating a

   // larger array and copying the existing collection into it.

   //-----------------------------------------------------------------

   private void increaseSize()

   {

DVD[] temp = new DVD[collection.length * 2];

for (int dvd = 0; dvd < collection.length; dvd++)

   temp[dvd] = collection[dvd];

collection = temp;

   }

}

//********************************************************************

// DVD.java Author: Lewis/Loftus

//

// Represents a DVD video disc.

//********************************************************************

import java.text.NumberFormat;

public class DVD

{

   private String title, director;

   private int year;

   private double cost;

   private boolean bluRay;

   //-----------------------------------------------------------------

   // Creates a new DVD with the specified information.

   //-----------------------------------------------------------------

   public DVD(String title, String director, int year, double cost,

boolean bluRay)

   {

this.title = title;

this.director = director;

this.year = year;

this.cost = cost;

this.bluRay = bluRay;

   }

   //-----------------------------------------------------------------

   // Returns a string description of this DVD.

   //-----------------------------------------------------------------

   public String toString()

   {

NumberFormat fmt = NumberFormat.getCurrencyInstance();

String description;

description = fmt.format(cost) + " " + year + " ";

description += title + " " + director;

if (bluRay)

   description += " " + "Blu-Ray";

return description;

   }

}

//********************************************************************

// Movies.java Author: Lewis/Loftus

//

// Demonstrates the use of an array of objects.

//********************************************************************

public class Movies

{

   //-----------------------------------------------------------------

   // Creates a DVDCollection object and adds some DVDs to it. Prints

   // reports on the status of the collection.

   //-----------------------------------------------------------------

   public static void main(String[] args)

   {

DVDCollection movies = new DVDCollection();

movies.addDVD("The Godfather", "Francis Ford Coppala", 1972, 24.95, true);

movies.addDVD("District 9", "Neill Blomkamp", 2009, 19.95, false);

movies.addDVD("Iron Man", "Jon Favreau", 2008, 15.95, false);

movies.addDVD("All About Eve", "Joseph Mankiewicz", 1950, 17.50, false);

movies.addDVD("The Matrix", "Andy & Lana Wachowski", 1999, 19.95, true);

System.out.println(movies);

movies.addDVD("Iron Man 2", "Jon Favreau", 2010, 22.99, false);

movies.addDVD("Casablanca", "Michael Curtiz", 1942, 19.95, false);

System.out.println(movies);

   }

}

Explanation / Answer

if (movies.isEmpty()) { System.out.println("The list is empty."); } else { for (int i = 1; i 0) { prev = temp; temp = temp.getNext(); } addThis.setNext(temp); prev.setNext(addThis);