⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shoppingcart.java

📁 一个基于java工厂模式的 的实现
💻 JAVA
字号:
/*
 * ShoppingCart.java
 *
 * Created on 2007年4月20日, 下午3:11
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package com.ebuy.web.beans;

import java.util.ArrayList;
import java.util.Iterator;


/**
 *
 * @author Administrator
 */
public class ShoppingCart
{
    
    private double totalmoney;
    private ArrayList items;
    public ShoppingCart()
    {
        this.items=new ArrayList();
    }

    public double getTotalmoney()
    {
        double sum=0;
        Iterator<Goods> iter=this.getItems().iterator();
        while(iter.hasNext())
        {
            sum += iter.next().getSubtotal();
        }
        this.totalmoney=sum;
        return this.totalmoney;
    }

    public void setTotalmoney(double totalmoney)
    {
        this.totalmoney = totalmoney;
    }

    public ArrayList getItems()
    {
        return items;
    }

    public void setItems(ArrayList items)
    {
        this.items = items;
    }
    
    public void addGood(Goods good)
    {
       Goods g=this.searchSameGoods(good);       
        if(g==null) //如果在ArrayList中不存在,直接加入
        {
           this.getItems().add(good);
        }       
        else //如果存在,找到Goods ,数量+1
        {
           int num=g.getQuantity();
           g.setQuantity(num+1);
        }        
    }
    private Goods searchSameGoods(Goods g)
    {
         Goods temp=null;
         Iterator<Goods> iter=this.getItems().iterator();
         while(iter.hasNext())
         {
            temp=iter.next();
            if(temp.equals(g))
            {
                return temp;
            }
         }
         return null;
    }
    
    public void removeGoodByIndex(int index)
    {
       this.getItems().remove(index);
    }
    
    public void updateQuantityByIndex(int index,int quantity)
    {
        if(quantity==0) //如果quantity为0,则删除Goods
        {
            this.removeGoodByIndex(index);
        }
        else  //根据索引找到Goods,修改数量
        {
            Goods good=(Goods)this.getItems().get(index);
            good.setQuantity(quantity);
        }      
     }    
    public void reset()
    {
        this.items.clear();
        this.setTotalmoney(0);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -