import java.util.Arrays;
public class Inventory3 {
//main method begins execution of the Java Application and tells the computer to initiate inventory entries
public static void main(String args[]) {
DVD dvd = null;
Inventory inventory = new Inventory();
System.out.println("\nKevin's DVD Inventory\n");
dvd = new DVD(5, 3, 21.06, "Zule");
inventory.add(dvd);
dvd = new DVD(7, 15, 29.99, "Transformers");
inventory.add(dvd);
dvd = new DVD(12, 9, 15.99, "Toy Soldiers");
inventory.add(dvd);
dvd = new DVD(13, 10, 12.99, "Ghostbusters");
inventory.add(dvd);
dvd = new DVD(21, 16, 19.99, "Punisher");
inventory.add(dvd);
dvd = new DVD(5, 20, 59.99, "Matrix trilogy");
inventory.add(dvd);
dvd = new DVD(27, 8, 14.99, "The Incredibles");
inventory.add(dvd);
inventory.display();
} // end method dvd
} // end method main
// end class Inventory2
class DVD implements Comparable{
private int no;
private int copies;
private double price;
private String name;
DVD(int no, int copies, double price, String name) {
this.no = no;
this.copies = copies;
this.price = price;
this.name = name;
}
public String getName() {
return name;
}
public double value() {
return price * copies;
}
public double fee() {
return value * .05;
}
public int compareTo(Object object) {
return name.compareTo(((DVD) object).getName());
}
public String toString() {
return String.format("no=%2d copies=%2d price=$%5.2f name=%-15s value=$%,2.2f fee=%$,.2f",
no, copies, price, name, value(), fee());
}
} // end class DVD
class Inventory{
private DVD[] dvds;
private int numDVDs;
private int value;
Inventory() {
dvds = new DVD[10];
numDVDs = 0;
}
public void add(DVD dvd) {
dvds[numDVDs] = dvd;
++numDVDs;
sort();
}
public double totalValue() {
double total = 0;
for (int i=0; i<dvds.length; i++) {
total += dvd[i].getcopies * dvd[i].getprice;
}
return total;
}
private void sort() {
Arrays.sort(dvds, 0, numDVDs);
}
public void display() {
System.out.println("\nKevin's inventory contains " + numDVDs + " DVD Titles\n");
for (int i = 0; i < numDVDs; i++)
System.out.printf("%3d %s\n", i, dvds[i]);
System.out.printf("\nTotal inventory value is %.2f\n\n", totalValue());
}
} // end class Inventory
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
by: PaulCaswellPosted on 2007-12-19 at 08:21:37ID: 20500642
Hi,
There are several problems with this code that would probably make it fail to compile. Perhaps this will help:
Paul
Select allOpen in new window