Information Systems

Chaston Carter

7-2 Final Project Milestone Two: Recipe Class

Southern New Hampshire University

Recipe file

package SteppingStones;

import java.util.Scanner;

import java.util.ArrayList;

/**

*

*

*

* @Chaston Carter

*

*/

public class Recipe {

// Instance variables

private String recipeName;

private int servings;

private double totalRecipeCalories;

private ArrayList<String> recipeIngredients;

/**

* Default no arg constructor

*/

public Recipe() {

this.recipeName = “”;

this.servings = 0;

this.recipeIngredients = new ArrayList<>();

this.totalRecipeCalories = 0;

}

/**

* Constructor using fields

*

* @param recipeName

* @param servings

* @param recipeIngredients

* @param totalRecipeCalories

*/

public Recipe(String recipeName, int servings,

ArrayList<String> recipeIngredients, double totalRecipeCalories) {

this.recipeName = recipeName;

this.servings = servings;

this.recipeIngredients = recipeIngredients;

this.totalRecipeCalories = totalRecipeCalories;

}

public void createNewRecipe() {

boolean addMoreIngredients = true;

Scanner scnr = new Scanner(System.in);

System.out.println(“Please enter the recipe name: “);

this.recipeName = scnr.nextLine();

System.out.println(“Please enter the number of servings: “);

this.servings = scnr.nextInt();

do {

System.out.println(“Please enter the ingredient name”

+ ” or type end if you are finished entering ingredients: “);

String ingredientName = scnr.next();

if (ingredientName.toLowerCase().equals(“end”)) {

addMoreIngredients = false;

} else {

this.recipeIngredients.add(ingredientName);

System.out.println(“Please enter the ingredient amount: “);

float ingredientAmount = scnr.nextFloat();

System.out.println(“Please enter the ingredient Calories: “);

int ingredientCalories = scnr.nextInt();

this.totalRecipeCalories += (ingredientCalories * ingredientAmount);

}

} while (addMoreIngredients);

scnr.close();

}

public void printRecipe() {

int singleServingCalories = (int) (totalRecipeCalories / servings);

System.out.println(“Recipe: ” + recipeName);

System.out.println(“Serves: ” + servings);

System.out.println(“Ingredients:”);

for (String ingredient : recipeIngredients) {

System.out.println(ingredient);

}

System.out.println(“Each serving has ” + singleServingCalories + ” Calories.”);

}

public String getRecipeName() {

return recipeName;

}

public void setRecipeName(String recipeName) {

this.recipeName = recipeName;

}

public double getTotalRecipeCalories() {

return totalRecipeCalories;

}

public void setTotalRecipeCalories(double totalRecipeCalories) {

this.totalRecipeCalories = totalRecipeCalories;

}

public ArrayList<String> getRecipeIngredients() {

return recipeIngredients;

}

public void setRecipeIngredients(ArrayList<String> recipeIngredients) {

this.recipeIngredients = recipeIngredients;

}

public int getServings() {

return servings;

}

public void setServings(int servings) {

this.servings = servings;

}

}

Or we could try this Recipe Test Below:

//SteppingStone5_recipeTester.java

import java.util.ArrayList;

/*

* To change this license header, choose License Headers in Project Properties.

* To change this template file, choose Tools | Templates

* and open the template in the editor.

*/

package SteppingStones;

/**

*

* @Chaston

*/

public class SteppingStone5_RecipeTest {

/**

* @param args the command line arguments

*/

public static void main(String[] args) {

// Create two recipe objects first

SteppingStone5_Recipe myFirstRecipe = new SteppingStone5_Recipe();

ArrayList recipeIngredients = new ArrayList();

ArrayList recipeIngredientsTwo = new ArrayList();

String ingredientName = “Anchovies”;

Ingredient tempIngredient = new Ingredient().addNewIngredient(ingredientName);

recipeIngredients.add(tempIngredient);

SteppingStone5_Recipe mySecondRecipe = new SteppingStone5_Recipe(“Pizza”, 2, recipeIngredients, 300);

// Initialize first recipe

String ingredientNameTwo = “Noodles”;

Ingredient tempIngredientTwo = new Ingredient().addNewIngredient(ingredientNameTwo);

recipeIngredientsTwo.add(tempIngredientTwo);

myFirstRecipe.setRecipeName(“Ramen”);

myFirstRecipe.setServings(2);

myFirstRecipe.setRecipeIngredients(recipeIngredientsTwo);

myFirstRecipe.setTotalRecipeCalories(150);

// Print details of both recipes

myFirstRecipe.printRecipe();

mySecondRecipe.printRecipe();

}

}

Order now and get 10% discount on all orders above $50 now!!The professional are ready and willing handle your assignment.

ORDER NOW »»