大家好,我在國外求學最近開始學習java和物件導向的觀念
但第一個作業就遇到問題了QQ 助教的話也聽不太懂
希望有人可以指點我一下
題目要寫一個產生質數的程式
第一個方法是要寫一個sieve方法
當sieve(100)時,要產生兩個陣列,一個是100以下的所有數字,除了前兩項
另一個是布林陣列,前兩項是False,之後都為true
測試的程式如下,應該要印出2-99的整數
try
{
sieve = new Sieve(100);
}
catch (IllegalArgumentException oops)
{
System.out.println("Sieve size must be at least 2.");
}
// This must print integers from 2 to 99, separated by blanks.
System.out.println(sieve);
以下是我寫的程式
public class Sieve {
private boolean[] numbers;
private Sieve[] sieve;
private int max;
public Sieve(int max) {
this.max=max;
numbers=new boolean[max];
sieve = new Sieve[max];
if(max<2)
throw new IllegalArgumentException();
else {
numbers[0]=false;
numbers[1]=false;
for(int i=2;i<max;i++) {
numbers[i]=true;
X sieve[i-2]=i; //這邊會出現type mismatch
//的問題,但我不知道怎麼辦QQ
}}}}
請問可以告訴我應該要改正哪裡嗎,感謝!