2017-04-24 52 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

好吧,它的罰款..反正謝謝你。 –

相關問題