Skip to content

Commit 3e37a96

Browse files
authored
Merge pull request #6 from LaunchCodeEducation/lsn7-exercises
Lsn7 exercises
2 parents cc736ba + c923620 commit 3e37a96

File tree

5 files changed

+137
-0
lines changed

5 files changed

+137
-0
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
package org.launchcode.java.demos.lsn7interfaces;
2+
3+
import java.util.ArrayList;
4+
import java.util.Arrays;
5+
6+
public class Case {
7+
private ArrayList<Flavor> flavors = new ArrayList<>();
8+
private ArrayList<Cone> cones = new ArrayList<>();
9+
10+
public Case(){
11+
Cone cone1 = new Cone("Waffle", 1.25, new ArrayList<>(Arrays.asList( "gluten")));
12+
Cone cone2 = new Cone("Sugar", 0.75, new ArrayList<>(Arrays.asList( "gluten")));
13+
Cone cone3 = new Cone("Wafer", 0.50, new ArrayList<>(Arrays.asList( "gluten")));
14+
Cone cone4 = new Cone("Bowl", 0.05, new ArrayList<>(Arrays.asList( "none")));
15+
cones.add(cone1);
16+
cones.add(cone2);
17+
cones.add(cone3);
18+
cones.add(cone4);
19+
20+
Flavor flavor1 = new Flavor("Vanilla", 0.75, new ArrayList<>(Arrays.asList( "dairy")));
21+
Flavor flavor2 = new Flavor("Chocolate", 0.75, new ArrayList<>(Arrays.asList( "dairy")));
22+
Flavor flavor3 = new Flavor("Red Velvet", 0.85, new ArrayList<>(Arrays.asList( "dairy, red #5")));
23+
Flavor flavor4 = new Flavor("Rocky Road", 0.85, new ArrayList<>(Arrays.asList( "dairy, nuts, gelatin")));
24+
Flavor flavor5 = new Flavor("Strawberry Sorbet", 0.50, new ArrayList<>(Arrays.asList( "strawberry")));
25+
flavors.add(flavor1);
26+
flavors.add(flavor2);
27+
flavors.add(flavor3);
28+
flavors.add(flavor4);
29+
flavors.add(flavor5);
30+
}
31+
32+
public ArrayList<Flavor> getFlavors() {
33+
return flavors;
34+
}
35+
36+
public ArrayList<Cone> getCones() {
37+
return cones;
38+
}
39+
40+
public void setFlavors(ArrayList<Flavor> flavors) {
41+
this.flavors = flavors;
42+
}
43+
44+
public void setCones(ArrayList<Cone> cones) {
45+
this.cones = cones;
46+
}
47+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package org.launchcode.java.demos.lsn7interfaces;
2+
3+
import java.util.ArrayList;
4+
5+
public class Cone extends Ingredient {
6+
7+
public Cone(String aName, double aCost, ArrayList<String> someAllergens){
8+
super (aName, aCost, someAllergens);
9+
}
10+
11+
12+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
package org.launchcode.java.demos.lsn7interfaces;
2+
3+
import java.util.ArrayList;
4+
5+
public class Flavor extends Ingredient {
6+
7+
8+
public Flavor(String aName, double aCost, ArrayList<String> someAllergens){
9+
super (aName, aCost, someAllergens);
10+
}
11+
12+
13+
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
package org.launchcode.java.demos.lsn7interfaces;
2+
3+
import java.util.ArrayList;
4+
5+
public abstract class Ingredient {
6+
private String name;
7+
private double cost;
8+
private ArrayList<String> allergens;
9+
10+
public Ingredient(String aName, double aCost, ArrayList<String> someAllergens){
11+
name = aName;
12+
cost = aCost;
13+
allergens = someAllergens;
14+
}
15+
16+
public String getName() {
17+
return name;
18+
}
19+
20+
public void setName(String name) {
21+
this.name = name;
22+
}
23+
24+
public double getCost() {
25+
return cost;
26+
}
27+
28+
public void setCost(double cost) {
29+
this.cost = cost;
30+
}
31+
32+
public ArrayList<String> getAllergens() {
33+
return allergens;
34+
}
35+
36+
public void setAllergens(ArrayList<String> allergens) {
37+
this.allergens = allergens;
38+
}
39+
40+
@Override
41+
public String toString() {
42+
return "Name: " + name + "\n" +
43+
"Cost: $" + cost + "\n" +
44+
"Allergens: " + allergens + "\n";
45+
}
46+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package org.launchcode.java.demos.lsn7interfaces;
2+
3+
import java.util.ArrayList;
4+
5+
public class Main {
6+
public static void main(String[] args){
7+
Case menu = new Case();
8+
ArrayList<Flavor> flavors = menu.getFlavors();
9+
ArrayList<Cone> cones = menu.getCones();
10+
11+
// TODO: Use a Comparator class to sort the 'flavors' array alphabetically by the 'name'
12+
// field.
13+
14+
// TODO: Use a Comparator class to sort the 'cones' array in increasing order by the 'cost'
15+
// field.
16+
17+
// TODO: Print the 'flavors' and 'cones' lists (in a clear manner) to verify the sorting.
18+
}
19+
}

0 commit comments

Comments
 (0)