2013-03-07 58 views
1

在類SitoEratostenesaTest,我有:布爾[]不能被解析爲一個可變

SitoEratostenesa myObj = new SitoEratostenesa(liczby[x]); 

for(i=1; i<ilosc; i++) 
{ 
    if(tab[i]) 
    { 
     System.out.println((i+1)+" jest liczba pierwsza"); 
    } 
    else 
    { 
     System.out.println((i+1)+" jest liczba zlozona"); 
    } 
} 

boolean tab[]SitoEratostenesa類創建的。我如何在我的情況下使用這張桌子?

+1

什麼是'SitoEratostenesa'? – Apurv 2013-03-07 11:43:03

+0

SitoEratostenesa類必須爲tab變量設置一些getter和setter。你不能做myObj.getTab()嗎? 或者你可以做myObj.tab [i] – 2013-03-07 11:45:09

+0

如果它是一個對象變量,你需要這樣做: myObj.tab [i](因此它需要是「公開」的c) 如果它是一個靜態變量你需要做這樣的事情: SitoEratostenesa.tab [i] 。在java中編寫了一段時間的哈密爾頓,所以這可能不是100%正確 – puelo 2013-03-07 11:45:51

回答

1

SitoEratostenesa.tab靜態?如果沒有,您需要首先參考SitoEratostenesa的實例。

假設SitoEratostenesa.tab是訪問的(public爲例)SitoEratostenesaTest,那麼下面應該工作:

if(SitoEratostenesa.tab[i]) 

如果tab心不是靜態的,你需要通過通過SitoEratostenesa的實例來訪問它:

SitoEratostenesa yourInstance = ... 

if(yourInstance.tab[i]) 
1

你需要使用myObj.tab[i]來引用tab[]在你的課堂上。它沒有提及你的對象。

0

嘗試使用myObj.getTab()從SitoEratostenesa獲取標籤數組,例如使用myObj.getTab()[i]。如果它不在那裏,可能會直接到達,這通常不是一個好習慣,那麼它就叫做myObj.tab[i]。如果他們都沒有,那麼你需要(如果你被允許的話)製作一個返回tab的getter方法。

相關問題