ホームページ >Java >&#&チュートリアル >マルチスレッドを使用してJavaで素数と回文を見つけるにはどうすればよいですか?

マルチスレッドを使用してJavaで素数と回文を見つけるにはどうすればよいですか?

WBOY
WBOY転載
2023-09-16 12:05:03567ブラウズ

マルチスレッドを使用してJavaで素数と回文を見つけるにはどうすればよいですか?

マルチスレッドは、複数の操作を同時に実行できるようにする Java プログラミング言語の機能です。マルチスレッドでは、操作はスレッドと呼ばれる小さな部分に分割されます。各スレッドは、他のスレッドのパフォーマンスに影響を与えることなく、独立したタスクを実行します。マルチスレッドの主な利点は、CPU などのリソースが最適に利用され、割り当て操作の実行時間が短縮されることです。

素数と回文を見つけることは、すべての初心者プログラマーが実行する基本的なプログラミング タスクの 1 つです。ただし、この記事では、同じタスクをエキサイティングな方法で達成します。マルチスレッド環境でスレッドを使用して素数と回文を見つける Java プログラムについて説明します。ここで、スレッドとは、大規模な操作の小さなサブプロセスを指します。

マルチスレッドを使用して素数と回文を見つけるプログラム

Java のマルチスレッドを使用して素数と回文数を検索します。具体的な方法は次のとおりです。

###方法###

'Thrd' という名前のクラスを作成し、その中に 2 つの静的メソッド 'operation1()' と 'operation2()' を定義し、対応するパラメーターを定義します。
  • 「operation1()」で回文ロジックを定義し、「operation2()」で素数ロジックを定義します。素数は 2 つの因数 1 と数値自体のみを含む整数ですが、回文は後ろから読んでも前から読んでも同じです。
  • さらに、Thread クラスを 2 つ作成します。最初のスレッド クラスで、パラメーターを渡して「operation1()」メソッドを呼び出します。同様に、2 番目のスレッド クラスの「operation2()」メソッドを呼び出します。
  • 最後に、main メソッドでスレッド クラスのオブジェクトを 2 つ作成し、組み込みメソッド "start()" を使用して実行します。
  • class Thrd {   
       // method to find palindrome number
       public static void operation1(int num) {    
          int num1 = num;
          int rev = 0;
          while(num1 != 0) {
             int rem = num1 % 10;
             num1 /= 10;
             rev = rev * 10 + rem;
          }
          if(num == rev) {
             System.out.println(num + " is a Palindrome number");
          } else {
             System.out.println(num + " is Not a Palindrome number");
          }  
       }
       // method to find prime number
       public static void operation2(int nums) {
          int countr = 0;
          if(nums == 2) {
             System.out.println(nums + " is a prime number");
          } else {
             for(int i = 1; i <= nums; i++) {
                if(nums % i == 0) {
                   countr++;
                }
             }
             if(countr == 2) {
                System.out.println(nums + " is a prime number");
             } else {
                System.out.println(nums + " is not a prime number");
             }
          }
       }
    }    
    class Thrd1 extends Thread {   // thread number 1 
       public void run() {    
          Thrd.operation1(212); // calling method to check palindrome number   
       }    
    }    
    class Thrd2 extends Thread { // thread number 2    
       public void run() {    
          Thrd.operation2(23); // calling the method to check prime number   
       }    
    } 
    public class ThrdExecution {    
       public static void main(String args[]) {    
          // creating object for thread class
          Thrd1 oprt1 = new Thrd1();    
          Thrd2 oprt2 = new Thrd2();  
          // Starting the thread operation
          oprt1.start();    
          oprt2.start();  
       }    
    }
    
出力

23 is a prime number
212 is a Palindrome number
###結論は###

この記事は、マルチスレッドとスレッドを紹介することから始めます。次に、問題ステートメントと、マルチスレッドを使用して素数と回文を見つけるという目標を定義しました。次のセクションでは、サンプル プログラムを通じて、特定の問題の解決策について説明します。私たちのソリューションでは、素数と回文の検索を処理する 2 つの別個のスレッドを作成しました。

以上がマルチスレッドを使用してJavaで素数と回文を見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。