Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从textfield中提取值,然后将其放入set/arraylist_Java_Csv - Fatal编程技术网

Java 从textfield中提取值,然后将其放入set/arraylist

Java 从textfield中提取值,然后将其放入set/arraylist,java,csv,Java,Csv,为什么我的列表在从文本字段提取数据后仍然为空?或者有没有其他方法可以从textfield中获取值并将其附加到文件中?任何帮助都将不胜感激 public class AddUser implements ActionListener { Set<UserBean> list = new HashSet<UserBean>(); UserBean user = new UserBean(); Iterator it = list.iterator();

为什么我的
列表
在从文本字段提取数据后仍然为空?或者有没有其他方法可以从textfield中获取值并将其附加到文件中?任何帮助都将不胜感激

public class AddUser implements ActionListener
 {
   Set<UserBean> list = new HashSet<UserBean>();
   UserBean user = new UserBean();
   Iterator it = list.iterator();
   //Irrelevant code

 private void saveObject()
{
    try
       {
        FileWriter output = new FileWriter("D://names.csv", true);
        if (it.hasNext() == false)
        {
            System.out.println("empty");
        }
        while(it.hasNext())
        {
            UserBean current  = (UserBean)it.next();
            output.append(current.getLastName());
            output.append(",");
            output.append(current.getFirstName());
            output.append("\n");
        }
        } catch(Exception e)
        {

        }
    }

  public void actionPerformed(ActionEvent ae)
  {
     Object src = ae.getSource();
     if (src == bAdd) 
      { 
        user.setFirstName(tfFirst.getText().trim());
        user.setLastName(tfLast.getText().trim());
        list.add(user);
        saveObject();
       }
public类AddUser实现ActionListener
{
Set list=新的HashSet();
UserBean user=newuserbean();
Iterator it=list.Iterator();
//无关代码
私有void saveObject()
{
尝试
{
FileWriter输出=新的FileWriter(“D://names.csv”,true);
if(it.hasNext()==false)
{
System.out.println(“空”);
}
while(it.hasNext())
{
UserBean current=(UserBean)it.next();
append(current.getLastName());
输出。追加(“,”);
append(current.getFirstName());
output.append(“\n”);
}
}捕获(例外e)
{
}
}
已执行的公共无效行动(行动事件ae)
{
对象src=ae.getSource();
如果(src==bAdd)
{ 
user.setFirstName(tfFirst.getText().trim());
user.setLastName(tfLast.getText().trim());
列表。添加(用户);
saveObject();
}

首先,你的设计很糟糕

我认为没有理由首先使用
迭代器
集合
,因为您似乎正在保存单个对象


但是,请添加调试语句,以便确保一切按预期进行。

Empty catch block=坏主意。如何知道是否出现异常?只需插入e.printStackTrace();它仍然没有改变程序的结果,所以我想这不是问题。嗯?我认为行列表。添加(用户);解决了空哈希集。对不起,我对Java还是相当陌生。