📄 shoppingcart.java
字号:
package com.jtf.bookstore;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;
public class ShoppingCart
{
private Set items = null;
public ShoppingCart()
{
items = new HashSet();
}
public void addOrIncrementItem(OrderItem toAdd)
{
OrderItem existing = getItemForBook(toAdd.getBook());
if (existing != null)
{
removeItem(existing);
int qty = existing.getQty();
toAdd.setQty(toAdd.getQty() + qty);
}
addItem(toAdd);
}
public void replaceItem(OrderItem toReplace)
{
OrderItem existing = getItemForBook(toReplace.getBook());
if (existing != null)
{
removeItem(existing);
}
addItem(toReplace);
}
private void addItem(OrderItem item)
{
items.add(item);
}
public void removeItem(OrderItem item)
{
items.remove(item);
}
public void clear()
{
items.clear();
}
public Set getItems()
{
return items;
}
public int getItemCount()
{
return items.size();
}
private OrderItem getItemForBook(Book book)
{
Iterator it = items.iterator();
while (it.hasNext())
{
OrderItem item = (OrderItem) it.next();
if (item.getBook().equals(book))
{
return item;
}
}
return null;
}
public float getValue()
{
Set items = getItems();
float result = 0.0f;
Iterator it = items.iterator();
while (it.hasNext())
{
OrderItem i = (OrderItem) it.next();
result += i.getValue();
}
return result;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -