2013-03-07 54 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方法。

相关问题