java 中怎么向arraylist中添加数据呢? 如下代码

// 输入新增商品信息
System.out.print("要新增商品编号");
int id = scanner.nextInt();
System.out.println("要新增商品名字");
String name = scanner.next();
System.out.println("要新增商品价格");
double price = scanner.nextDouble();
System.out.println("要新增商品单位");
String company = scanner.next();
System.out.print("要新增商品数量:");
int stock = scanner.nextInt();
// 调用客户端业务的新增方法,获取服务器返回信息
Dtas datas = clientBIZ.addfoodadmin(id ,name, price, company, stock);
// 判断服务器返回状态
if (SysConstants.SYS_SUCCESS.equals(datas.getFlag())) {
System.out.println("新增成功!");
} else {
System.out.println("新增失败!请检查输入编号和名字是否重复");
}

public Dtas addfoodadmin(int id, String name , double price , String company, int stock){
try {
initsocket();
Dtas datas = new Dtas();
datas.setFlag(SysConstants.SYS_ADDDATE);
Food foodadmin = new Food();
foodadmin.setId(id);
foodadmin.setName(name);
foodadmin.setPrice(price);
foodadmin.setCompany(company);
foodadmin.setStock(stock);
datas.setFood(foodadmin);
objectOutputStream.writeObject(datas);
datas = (Dtas) objectInputStream.readObject();
return datas;
} catch (Exception e) {
e.printStackTrace();
}finally {
try {
socket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
return null;

}

(SysConstants.SYS_ADDDATE.equals(datas.getFlag())) {
int ture;
Food food = datas.getFood();
ture = serverService.addfood(food);
if(ture == 1) {
datas.setFlag(SysConstants.SYS_SUCCESS);
}
else{
datas.setFlag(SysConstants.SYS_ERROR);
}
}

想请教 addfood 这个方法该怎么写
public int addfood(Food food){
for (Food food2 : foodList) {
if (food2.getId() == food.getId() && food2.getName() == food.getName()) {
return 0;
} else {
System.out.println("1");
foodList.add(food);
System.out.println("2");
}

}
return 1;
}

第1个回答  2012-12-22
下面就是向ArrayList集合类里面添加数据的例子,,
list还可以点出remove(),clear(),get() 等方法。
你上百度问问题时尽量问简短一些比较好点,因为一般不会有人去给你一点一点去找,,
========-=======================================
package com.exam082;

import java.util.ArrayList;
import java.util.List;

public class ArrayList02 {
public static void main(String[] args) {
ArrayList02 ay2=new ArrayList02();//创建这个类实例
ay2.testList();
}

private void testList() {
List<Integer> list=new ArrayList<Integer> ();//拿到ArrayList集合类对象
list.add(11);//隐含了放的时候是11然后自动装箱把11变为Integer的对象类型的11了。
list.add(23);
for (int j = 0; j < list.size(); j++) {

//这样是可以的【list.get(j)是Integer对象类型的,这里自动拆箱为int类型的了】
int i = list.get(j);
System.out.println(i+100); //所以可以和100加了。
}

}

}
=============-========打印出下面的东西======================
111
123本回答被网友采纳
第2个回答  2012-12-22
public int addfood(Food food){
for (Food food2 : foodList) {
if (food2.getId() == food.getId() && food2.getName().equals(food.getName()) ) {
return 0;
}

}
System.out.println("1");
foodList.add(food);
System.out.println("2");
return 1;
}

试试追问

foodList.add(food);

这里出现异常! 不能添加进去
foodList.add(new Food(food.getId(),food.getName(),food.getPrice(),food.getCompany(),food.getCashierid()));
这个方法也不行!

追答

foodList 如何定义的?

ArrayList foodList=new ArrayList():
不是这样定义的吗

追问

都用过
ArrayList foodList=new ArrayList():

List foodList=new ArrayList():
都用过

追答

定义在哪?显示什么错误

本回答被网友采纳
第3个回答  2012-12-22
回答1个问题即可获得1个游戏币
第4个回答  2012-12-22
我怎么没有看到你那个地方要用ArrayList呢!
相似回答