2012-11-27 24 views
1

我試圖做一個「捷徑」的打印,的println和掃描儀。所以,我創建了一個不同的類,而這正是它在它:Java的錯誤 - 無法找到符號 - 變量是

import java.util.*; 
public class ShortCutClass { 
    Scanner input = new Scanner(System.in); 
    public void p (String text){ 
     System.out.print (text); 
    } 
    public void pl (String text){ 
     System.out.println (text); 
    } 
    public String is(){ 
     String a= input.nextLine(); 
     return a; 
    } 
    public double id(){ 
     double b= input.nextDouble(); 
     return b; 
    } 
    public int ii(){ 
     int c= input.nextInt(); 
     return c; 
    } 
} 

所以,我想檢查它是否工程─使用此:

import java.util.*; 
class ShortcutTest{ 
    Scanner input = new Scanner(System.in); 
    public static void main(String args[]){ 
     ShortCutClass scc = new ShortCutClass(); 
     scc.pl("So ummmm... How ya doin?"); 
     scc.p("Connected1 "); 
     scc.p("Connected2 "); 
     String a=scc.is; 
     double b=scc.id; 
     int c=scc.ii; 
     scc.pl (a); 
     scc.pl (b); 
     scc.pl (c);   
    } 
} 

,它給我下面的錯誤: 「無法找到符號 - 變量

我在做什麼錯 我怎樣才能解決這個

***編輯:??

我固定它,跑到另一個問題...... 我不能打印出B或C,因爲我寫的打印需要一個字符串,而b和c只能是雙和INT,這樣就不會工作。 有沒有更改打印(scc.p和scc.pr)的方法,以便它能夠接收任何類型的參數?

+0

'()'丟失。 'double b = scc.id;'應該是'double b = scc.id();'。 –

+0

'is','id'和'ii'是方法,而不是變量。 – Lion

+1

這些評論應該是真正的答案。好評如下:「爲什麼你會想讓你的代碼難以閱讀?」 –

回答

3

這裏:

String a=scc.is; 
double b=scc.id; 
int c=scc.ii; 

...你想指方法,好像他們是變量。您需要調用的方法:

String a=scc.is(); 
double b=scc.id(); 
int c=scc.ii(); 

作爲一個側面說明,我會強烈勸阻你做這一切的開始。即使你想一個方便的類,請給出合理的方法名字 - writeIntreadInt等使用的縮寫這樣使得代碼非常難讀。

+0

+1.5百萬代表。 –

+0

實際上它比7377更多。 ;) –

+0

謝謝你的回答! 事情是,我遇到了另一個問題...請閱讀我剛剛寫到的額外部分...謝謝你! – user1857509

1

那是因爲「是」是方法,您試圖訪問它作爲一個公共變量。

嘗試:

String a = scc.is(); 
0

在行

String a=scc.is; 
double b=scc.id; 

的()是缺少:

正確竟被DBE:

String a=scc.is(); 
double b=scc.id(); 

而且蒂普:請取下短削減,該代碼是不太重要的adable

相關問題