Welcome to the Java Programming Forums


The professional, friendly Java community. 21,500 members and growing!


The Java Programming Forums are a community of Java programmers from all around the World. Our members have a wide range of skills and they all have one thing in common: A passion to learn and code Java. We invite beginner Java programmers right through to Java professionals to post here and share your knowledge. Become a part of the community, help others, expand your knowledge of Java and enjoy talking with like minded people. Registration is quick and best of all free. We look forward to meeting you.


>> REGISTER NOW TO START POSTING


Members have full access to the forums. Advertisements are removed for registered users.

Results 1 to 2 of 2

Thread: Write a Java program to simulate an online shopping cart.

  1. #1
    Junior Member
    Join Date
    Dec 2013
    Posts
    20
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Default Write a Java program to simulate an online shopping cart.

    Hello, I need some help finishing this shopping cart java program. Here are the directions:

    Project description: Write a Java program to simulate an online shopping cart.

    An online shopping cart is a collection of items that a shopper uses to collect things for purchase. A shopper can add items to the cart, remove them, empty the cart, view the items in the cart, and end shopping and proceed to checkout.
    Using the Java ArrayList class, you will write a program to support these functions. Each item added to the cart will be represented with the CartItem class (se attached .java files).

    When your program begins, you will display a menu of actions the shopper can perform:

    SHOPPING CART OPTIONS
    1 add an item to your cart
    2 remove an item from your cart
    3 view the items in your cart
    4 end shopping and go to checkout
    5 empty your cart
    6 exit the program

    Your program will allow the shopper to add and remove items to the shopping cart. The program should continue as long as the shopper want to keep going. The shopper can exit by choosing option 6, and in this case the shopper will exit without making a purchase. The shopper can also exit by selecting option 4, and go to checkout. In this option, the program will display the amount due by adding up the cost of all the items in the cart. Use the NumberFormat class to format the amount in currency.

    import java.util.ArrayList;
    import java.util.Scanner;
    import java.util.Scanner;
     
    public class Shopping {
     
    	/**
    	 * In this program you will replicate an online shopping
    	 * cart. You will use the ArrayList class to hold the
    	 * items in your shopping cart.
    	 * You will use the CartItem class to represent items in
    	 * your shopping cart.
    	 * In this driver program you will do the following:
    	 * Create the shopping cart object
    	 * Offer a menu of options:
    	 * 1 add an item to your cart
    	 * 2 remove an item from your cart
    	 * 3 view the items in your cart
    	 * 4 end shopping and go to checkout
    	 * 5 empty your cart
    	 * 6 exit the program
    	 * Use the Scanner class to collect input
    	 */
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		ArrayList<CartItem> shoppingCart = new ArrayList<CartItem>();
    		Scanner scan = new Scanner(System.in);
    		ArrayList<Integer> intList = new ArrayList<Integer>();
    		boolean keepGoing = true;
    		int choice = 0;
    		int input = 0;
    		int index=0;
    		int total = 0;
    		Integer item;
     
    		while(keepGoing)
    		{
    			System.out.println("\nMenu - Managing a List");
    			System.out.println("1 Add an item to your cart");
    			System.out.println("2 Remove an item from your cart");
    			System.out.println("3 View the items in your cart");
    			System.out.println("4 Exit and add up the total");
    			System.out.println("5 Empty your cart");
    			System.out.println("6 Exit");
    			System.out.println("Select a menu option");
    			choice = scan.nextInt();
    			if (choice <1 || choice >6)
    			{
    				System.out.println("Enter a value between 1 and 6:");
    			}
    			else
    			{
    				switch (choice)
    				{
    				case 1:
    					//add an integer
    					System.out.println("Enter an item:");
    					input = scan.nextInt();
    					item = new Integer(input);
    					intList.add(item);
    					//intList.add(input);
    					break;
    				case 2:
    					//remove from the list
    					System.out.println("Enter an item to remove:");
    					input = scan.nextInt();
    					item = new Integer(input);
    					if (intList.contains(item))
    					{
    						intList.remove(item);
    						System.out.println(item + " has been removed.");
    					}
    					else
    					{
    						System.out.println(item + " was not found in your shopping cart.");
    					}
    					break;
    				case 3:
    					//view the items in your cart
    					System.out.println(intList);
    					break;
    				case 4:
    					//Exit and add up the total
    					for (int i = 0; i<intList.size(); i++)
    					{
    						item = intList.get(i);
    						total = total + item.intValue();
    					}
    					System.out.println("Total is "+ total);
    					System.out.println("Goodbye");
    					keepGoing = false;
    					break;
    				case 5:
    					//Empty the list
    					intList.clear();
    					break;
    				case 6:
    					//exit
    					keepGoing = false;
    					System.out.println("Goodbye");
    					break;
     
    				}
    			}
    		}
    	}
    }

    public class CartItem {
    	private String product;
    	private int quantity;
    	private double price;
     
    	//constructor
    	public CartItem()
    	{
    		product = "";
    		quantity = 0;
    		price = 0.0;
    	}
    	public String getProduct()
    	{
    	return product;
    	}
    	public double getPrice()
    	{
    	return price;
    	}
    	public int getQuantity()
    	{
    	return quantity;
    	}
     
    	//constructor with parameters
    	public CartItem(String inProduct, int inQuant, double inPrice)
    	{
    		product = new String(inProduct);
    		quantity = inQuant;
    		price = inPrice;
    	}
    	//getter setter public methods for each instance data
    	public boolean equals(CartItem item)
    	{
    		//write the code for the equals method
    		//return true;
    		boolean result = false;
    		if (this.product.equalsIgnoreCase(item.getProduct()) && this.price == item.getPrice())
    			result = true;
    		else
    			result = false;
     
    		return result;
    	}
     
    	public String toString()
    	{
    		//write code for toString method
    		String result="";
     
    		return result;
    	}
    }

    i believe that most of the work needs to be done in the CartItem file. I need to write getter setter public methods for each instance data, write code for toString method, and also the constructor with parameters.

    Also, at line 58 and line 66, the code is trying to read an integer using the nextInt() method. But I need to have the code read a string. Please help me change it to read a string. Thanks !


  2. #2
    Super Moderator
    Join Date
    Jun 2013
    Location
    So. Maryland, USA
    Posts
    5,781
    My Mood
    Mellow
    Thanks
    236
    Thanked 717 Times in 703 Posts

    Default Re: Write a Java program to simulate an online shopping cart.

    Duplicate topic.

Similar Threads

  1. Default Write a Java program to simulate an online shopping cart.
    By aldos7 in forum What's Wrong With My Code?
    Replies: 36
    Last Post: December 16th, 2013, 05:45 AM
  2. Write a Java program to simulate an online shopping cart.
    By astjeanos in forum What's Wrong With My Code?
    Replies: 3
    Last Post: December 11th, 2013, 03:32 PM
  3. Shopping cart application
    By ashkrish in forum What's Wrong With My Code?
    Replies: 2
    Last Post: November 28th, 2012, 12:40 PM
  4. Shopping cart application
    By ashkrish in forum What's Wrong With My Code?
    Replies: 1
    Last Post: November 28th, 2012, 11:08 AM
  5. Replies: 1
    Last Post: February 8th, 2012, 04:16 PM