导航:首页 > 编程语言 > java加入购物车代码

java加入购物车代码

发布时间:2024-09-15 17:13:13

⑴ 编程 java 关于购物车

将session中的商品定义为对象
放入ArrayList中
修改了购物车内容后
把ArrayList.size()赋值到现在是0的位置

如:
购物车添加物品
List proctList = new ArrayList();
Proct proct1 = new Proct();
proctList.add(proct1);
...
Proct proctN = new Proct();
proctList.add(proctN);

session.setAttribute("proct", proctList);

页面可以写
List proctList = (List)session.getAttribute("proct");

把proctList.size()放到个数的位置

⑵ java 如何编写购物车

用Vector 或者是HashMap去装
<下面有部分代码你去看吧>

package com.aptech.restrant.DAO;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;

import java.sql.Connection;

import com.aptech.restrant.bean.CartItemBean;
import com.aptech.restrant.bean.FoodBean;

public class CartModel {
private Connection conn;
public CartModel(Connection conn) {
.conn=conn;
}

/**
* 得到订餐列表
*
* @return
*/
public List changeToList(Map carts) {

// 将Set中元素转换成数组,以便使用循环进行遍历
Object[] foodItems = carts.keySet().toArray();

// 定义double变量total,用于存放购物车内餐品总价格
double total = 0;
List list = new ArrayList();
// 循环遍历购物车内餐品,并显示各个餐品的餐品名称,价格,数量
for (int i = 0; i < foodItems.length; i++) {

// 从Map对象cart中取出第i个餐品,放入cartItem中
CartItemBean cartItem = (CartItemBean) carts
.get((String) foodItems[i]);
// 从cartItem中取出FoodBean对象
FoodBean food1 = cartItem.getFoodBean();
// 定义int类型变量quantity,用于表示购物车中单个餐品的数量
int quantity = cartItem.getQuantity();
// 定义double变量price,表示餐品单价
double price = food1.getFoodPrice();
// 定义double变量,subtotal表示单个餐品总价
double subtotal = quantity * price;
// // 计算购物车内餐品总价格
total += subtotal;

cartItem.setSubtotal(subtotal);
cartItem.setTotal(total);
list.add(cartItem);
}
return list;

}

/**
* 增加订餐
*/
public Map add(Map cart, String foodID) {
// 购物车为空
if (cart == null) {
cart = new HashMap();
}

FoodModel fd = new FoodModel(conn);
FoodBean food = fd.findFoodById(foodID);

// 判断购物车是否放东西(第一次点餐)
if (cart.isEmpty()) {
CartItemBean cartBean = new CartItemBean(food, 1);
cart.put(foodID, cartBean);

} else {
// 判断当前菜是否在购物车中,false表示当前菜没有被点过。。
boolean flag = false;
// 得到键的集合
Set set = cart.keySet();
// 遍历集合
Object[] obj = set.toArray();
for (int i = 0; i < obj.length; i++) {
Object object = obj[i];
// 如果购物车已经存在当前菜,数量+1
if (object.equals(foodID)) {
int quantity = ((CartItemBean) cart.get(object))
.getQuantity();
quantity += 1;
System.out.println(quantity);
((CartItemBean) cart.get(object)).setQuantity(quantity);
flag = true;
break;
}

}
if (flag == false) {
// 把当前菜放到购物车里面
CartItemBean cartBean = new CartItemBean(food, 1);
cart.put(foodID, cartBean);

}
}

return cart;
}

/**
* 取消订餐
*/
public Map remove(Map cart, String foodID) {
cart.remove(foodID);
return cart;
}

/**
* 更新购物车信息
*
* @param cart
* @param foodID
* @return
*/
public Map<String, CartItemBean> update(Map cart, String foodID,
boolean isAddorRemove) {
Map map;
if (isAddorRemove) {
map = add(cart, foodID);
} else {
map = remove(cart, foodID);
}
return map;
}
}

⑶ 购物车的Java代码

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;public class ShoppingCartManager {

HashMap<String, String> hm=new HashMap<String, String>();
float totlePrice=0;
//添加book到购物车
public void addBook(String bookId,String bookQuantity){

if(hm.containsKey(bookId)){
int value=Integer.parseInt(hm.get(bookId));
value+=Integer.parseInt(bookQuantity);
hm.put(bookId, value+"");
}else{
hm.put(bookId, bookQuantity);
}
}

//修改数量
public void updateQuantity(String bookId,String bookQuantity){
hm.put(bookId, bookQuantity);
}

//获取购物车的所有信息 并计算总价
public ArrayList<BookBean> getShoppingCart(){
ArrayList<BookBean> al=new ArrayList<BookBean>();
Iterator<String> i=hm.keySet().iterator();
String ids="";
BookTableManager btm=new BookTableManager();
while(i.hasNext()){
ids=ids+","+i.next();
}
al= btm.selectByBookIds(ids);

totlePrice=0; //清空总价,防止无限累计
for(int j=0;j<al.size();j++){
BookBean bb=al.get(j);
totlePrice+=bb.getPrice()*Integer.parseInt(getQuantityById(bb.getBookId()+""));
}

return al;
}

//获取总价
public float getTotlePrice(){
return totlePrice;
}

//根据ID获取数量
public String getQuantityById(String id){
String quantity=hm.get(id);
return quantity;
}

//清空购物车
public void clear(){
hm.clear();
}

//删除购物车中的一本书
public void deleteById(String id){
hm.remove(id);
}
}

⑷ JAVA 购物车示例代码

import java.awt.*;
import java.awt.event.*;
class ShopFrame extends Frame implements ActionListener
{ Label label1,label2,label3,label4;
Button button1,button2,button3,button4,button5;
TextArea text;
Panel panel1,panel2;
static float sum=0.0f;
ShopFrame(String s)
{ super(s);
setLayout(new BorderLayout());
label1=new Label("面纸:3元",Label.LEFT);
label2=new Label("钢笔:5元",Label.LEFT);
label3=new Label("书:10元",Label.LEFT);
label4=new Label("袜子:8元",Label.LEFT);
button1=new Button("加入购物车");
button2=new Button("加入购物车");
button3=new Button("加入购物车");
button4=new Button("加入购物车");
button5=new Button("查看购物车");
text=new TextArea("商品有:"+"\n",5,10);
text.setEditable(false);
addWindowListener(new WindowAdapter()
{ public void windowClosing(WindowEvent e)
{ System.exit(0);
}
}
);
button1.addActionListener(this);
button2.addActionListener(this);
button3.addActionListener(this);
button4.addActionListener(this);
button5.addActionListener(this);
panel1=new Panel();
panel2=new Panel();
panel1.add(label1);
panel1.add(button1);
panel1.add(label2);
panel1.add(button2);
panel1.add(label3);
panel1.add(button3);
panel1.add(label4);
panel1.add(button4);
panel2.setLayout(new BorderLayout());
panel2.add(button5,BorderLayout.NORTH);
panel2.add(text,BorderLayout.SOUTH);
this.add(panel1,BorderLayout.CENTER);
this.add(panel2,BorderLayout.SOUTH);
setBounds(100,100,350,250);
setVisible(true);
validate();
}
public void actionPerformed(ActionEvent e)
{ if(e.getSource()==button1)
{ text.append("一个面纸、");
sum=sum+3;
}
else if(e.getSource()==button2)
{ text.append("一只钢笔、");
sum=sum+5;
}
else if(e.getSource()==button3)
{ text.append("一本书、");
sum=sum+10;
}
else if(e.getSource()==button4)
{ text.append("一双袜子、");
sum=sum+8;
}
else if(e.getSource()==button5)
{
text.append("\n"+"总价为:"+"\n"+sum);
}
}

}

public class Shopping {
public static void main(String[] args) {
new ShopFrame("购物车");

}

}
我没用Swing可能显示不出来你的效果。不满意得话我在给你编一个。

⑸ 达内 java的购物车商品 不能重复添加 的代码。

在购物车中写:购物车一般放到session域中。其中有商品小计,有商品总计回的一些求和计算。我记答得用Map来弄的。 在购物车中添加map集合。根据放到购物车中的key来判断在map中是否存在,如果存在那就在原有商品上+1,如果不存在,那么就可以添加商品到购物车。

⑹ java 里面编写网上购物车的问题

有两个地方错了:
主要的一个错误是BookDetail类不存在,而你在ShopCar
类中引用了BookDetail,得写一个这样的类才行。

第二个错误的地方为你在类中使用了包,如果使用包的话就不能像一般的类那样直接使用javac 类名.java这样的形式编译了。
而要使用 javac -d . 类名.java才行,其中的-d .的意思是把输出的.class文件放以包名称的形式到当前文件夹下,当然你也可以输入其它路径也是可以的。

运行的话使用java 包名+类名就可以了,其中是以.分开包和类名称的。

看一下javac的帮助和java的帮助,里面说的很明白的。
编译的时候使用javac -d . 类名.java
运行的时候 java 包名.类名
注意如果包里又有子包的话运行的时候包与子包使用.分隔开来

阅读全文

与java加入购物车代码相关的资料

热点内容
电脑打印东西用什么文件 浏览:473
win8如何关掉程序 浏览:131
编程怎么编写手机短信验证 浏览:791
牵手是什么网站 浏览:379
哪个编程课是直播 浏览:272
win10显示不出手机文件夹 浏览:705
word文件阅读器 浏览:766
网站小图标怎么弄 浏览:58
怎么弄电脑密码 浏览:114
labview中将表格转为excel文件 浏览:454
口袋腕力升级 浏览:436
word刻录到光盘刻录大师 浏览:124
更改压缩文件后卡死是什么原因 浏览:201
电脑上如何发qq红包 浏览:230
如何删除word的空白页 浏览:822
创建swap文件 浏览:468
数控铣床编程在哪里编写 浏览:544
iphone文艺软件 浏览:938
纪元1404人口升级 浏览:527
公司网络如何设置自己路由器 浏览:649

友情链接