2016-07-01 4 views
0

私は1から100の50の一意の乱数を作成し、それをArrayListに加える以下のコードを持っています。スレッド(素数と配列リスト)を作成するには?

ここでは、素数であれば50個の固有の乱数をチェックするThread(別のクラス)が必要です(自分と1でのみ分けることができます)。

リスト内の数字が素数でない場合は、リストから削除する必要があります。

私はスレッドに関する経験がありません。誰かが私を助けてくれますか?

import java.util.Random; 
import java.util.ArrayList; 

class RandomPrim { 

    public static void main(String[] args) { 

     Random nr = new Random(); 
     int number; 
     ArrayList<Integer> liste = new ArrayList<Integer>(); 

     // get 50 random unique numbers between 1 and 100 
     for (int counter = 1; counter <= 50;) { 
      number = 1+nr.nextInt(100); 

      if(!(liste.contains(number))) { 
       liste.add(number); 
       counter++; 
      } 
     } 
     System.out.println("50 random unique numbers between 1 and 100: ");    
     for (int ausgabe : liste) {    
      System.out.print(ausgabe + ", "); 
     } 
    } 
} 
+2

は何の経験を有していない*しないように正当な理由ではありません。

public class MyClass implements Runnable { private List<Integer> myList; public MyClass(List<Integer> myList) { this.myList = myList; //Constructor for the class } @Override public void run() { //your code here } } 

あなたは、このようなスレッドを開始*自分で何かをしようとする。基本的には、あなたの宿題/学習努力の重要な部分を他の人に落としただけです。他の人にあなたのために重労働をするように頼むことから、あなたは何を学ぶと思いますか?ヒント:スレッドのチュートリアルを読むことから始めます。または書籍。そこには本当にたくさんの素材があります! – GhostCat

+0

質問者が問題を自分自身で解決しようとしたという証拠が何も表示されていないため、この質問を議論の対象外としています。彼はただ彼の要求をここに落としているだけです。 – GhostCat

+2

私はそれを閉鎖することに反対します。学ぶ努力は、励まし、指導、指導、妨げられないようにすべきです。私たちは皆あり、まだ初心者です。 – c0der

答えて

4

別のクラスのスレッドは次のように達成することができます。

List<Integer> myList = new ArrayList<>(); //Your list you want to check 
    MyClass myClass = new MyClass(myList); 
    new Thread(myClass).start(); 
関連する問題