2014-02-25 145 views
0

您能幫我解釋如何獲取數據類型爲long的輸入數據的值。我正在製作一個有GUI的隊列程序。我在獲取long的值時出錯。這是我的方法。獲取長數據類型

public Queue(int s) // constructor 
    { 
    maxSize = s; 
    queArray = new long[maxSize]; 
    front = 0; 
    rear = -1; 
    nItems = 0; 
    } 

這是我的按鈕誰會得到的價值。

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { 
    a.Queue(jTextField2.valueOf(j) = long); 
    jTextField2.setText(""); 
    refresh(); 
    jLabel2.setText(""); 

    // TODO add your handling code here: 
} 

或者你可以給我一個帶有GUI的隊列示例程序。謝謝。 :)

+1

你得到了什麼錯誤,你可以把堆棧跟蹤。 –

+0

'long'是Java中的一個關鍵字,所以不可能這樣做......'a.Queue(jTextField2.valueOf(j)= long);'你的意思是在那裏有一個變量名稱,而不是'長'? –

回答

0

我想你需要從jTextField2得到的值,並將其轉換爲long並將其插入隊列。

String value = jTextField2.getText(); 
long lvalue = Long.parseLong(value); 
a.Queue(lvalue); 

或在一行a.Queue(Long.parseLong(jTextField2.getText()));

Long.parseLong可能拋出RuntimeException,whihc應進行處理。

private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) { 
    try{ 
     a.Queue(Long.parseLong(jTextField2.getText())); 
     ... 
    }catch(RuntimeException rex){...} 
} 
+0

我不認爲'JTextField'類中有'getValue()'方法。 – SudoRahul

+1

奧普斯,謝謝你糾正我的兄弟 –

+0

RJ。該錯誤已被刪除,但我將如何獲得輸入?並從另一個類調用該方法,以便它可以執行隊列方法? –

2

如果你想從jTextField2這是JTextField對象長數據,那麼你可以做這樣的事情。

long j = Long.parseLong(jTextField2.getText()); // get the string data and parse it to long 
// use the long value `j` as you want