2012-04-15 26 views
0

我有一個最終字符串的問題。它是一個mysql數據庫客戶端。 我想單擊JButton來更改查詢。Java - 無法爲最終變量查詢分配值。這是最後的字符串

public void run() { 
final String query; 
(...) 
start.addActionListener(new ActionListener() { 
    public void actionPerformed(ActionEvent e) 
    { 
if(firstSel==null || selchose.getText().equals(selchose_str) || selbase.getText().equals(base_str)) { 
      query = "Select * FROM EMP"; 
     } 
(...) 

問題是與

query = "Select * FROM EMP"; 

這表明我

不能將值分配給最後一個變量查詢

如何解決這個問題?

+0

我問[問題](http://stackoverflow.com/questions/3981924/how-to-retrieve-a-value-that-must-be-computed-on-another-thread)一而回到這個相同的問題,並可能是你的信息。 – 2012-04-15 14:01:29

回答

0
class YOurClassName{ 

private String query; //make here.....<<<<<<<< 

public void run() { 

(...) 
start.addActionListener(new ActionListener() { 
    public void actionPerformed(ActionEvent e) 
    { 
if(firstSel==null || selchose.getText().equals(selchose_str) || selbase.getText().equals(base_str)) { 
      query = "Select * FROM EMP"; 
     } 
(...) 


} 
+1

@Ganjira:你真的搞不清楚了? – 2012-04-15 14:10:53

2

要麼使查詢字符串成爲匿名內部ActionListener類的私有類字段或局部變量。

+0

你可以在代碼中顯示它嗎? 我將不勝感激。 :) – Ganjira 2012-04-15 13:44:46

+0

@Ganjira:???這是微不足道的。只需將查詢聲明爲類的變量,而不是運行方法中的變量。當然你知道如何做到這一點,對吧? – 2012-04-15 13:47:08

+0

那麼,我聲明的運行方法以外的查詢,但它顯示相同的問題。 :/ – Ganjira 2012-04-15 13:49:34