2017-04-24 49 views
1

如何在Java中获得长数据类型? 例如,我会得到一个字符串是这样的:如何从文本字段获取Long值并将表单发送到ArrayList

String thisString = thisString.getText(); 

但是我试着用长数据类型相同,这是行不通的。 我需要它发送到一个ArrayList,这是整个代码:

package dao; 

import entities.*; 
import java.util.*; 
import javax.swing.JTextField; 
import java.text.*; 
import javaapplication1.*; 

public class ProductModel{ 

    public List<Product> findAll(){ 
     try { 
      List<Product> forms = new ArrayList<Product>(); 
      JTextField textDate; 
      JTextField textFecha; 
      JTextField textTotal; 
      return forms; 
     } catch (Exception e){ 
      return null; 
     } 
    } 
} 

这是我的数组,然后我在这里有这等文件:

public class Product{ 

    public String date; 
    public String fac; 
    public Long total; 
} 

然后最后,按钮,将数据发送到ArrayList:

@Override 
    public void actionPerformed(ActionEvent e) { 

     Product form = new Product(); 
     form.date = textDate.getText(); 
     form.fac = textFac.getText(); 
     form.total = textTotal.getText(); 
     forms.add(form); 
    } 
}); 

但它似乎不起作用。

回答

2

A String不是Long。这就是编译器向你大喊的原因。你需要解析它。

form.total = Long.parseLong(textTotal.getText()); 

如果字符串为空,请确保您有空检查并将其分配给0。

而一旦你解决了这个问题,请给Encapsulation读一下。

+0

非常感谢,另一个问题(这与我想做什么有关)是,我得到一个错误:“窗体”不能在这行'forms.add(form);'和“forms “是ArrayList的名称,有什么办法解决这个问题? –

+0

@ J.Doe你可以问另一个问题吗? –

+0

好吧,它的罚款..反正谢谢你。 –

相关问题