Rumah >Java >javaTutorial >Bagaimana untuk mencari nombor perdana dan palindrom di Jawa menggunakan multithreading?

Bagaimana untuk mencari nombor perdana dan palindrom di Jawa menggunakan multithreading?

WBOY
WBOYke hadapan
2023-09-16 12:05:03567semak imbas

Bagaimana untuk mencari nombor perdana dan palindrom di Jawa menggunakan multithreading?

Multi-threading ialah ciri bahasa pengaturcaraan Java yang membolehkan kami melakukan berbilang operasi pada masa yang sama. Dalam multithreading, operasi dibahagikan kepada bahagian yang lebih kecil dipanggil benang. Setiap utas melaksanakan tugas bebas tanpa menjejaskan prestasi utas lain. Faedah utama multi-threading ialah penggunaan sumber yang optimum seperti CPU dan masa pelaksanaan operasi peruntukan yang lebih baik.

Mencari nombor perdana dan palindrom ialah salah satu tugas pengaturcaraan asas yang dilakukan oleh setiap pengaturcara pemula. Walau bagaimanapun, dalam artikel ini, kami akan menyelesaikan tugas yang sama dengan cara yang menarik. Kami akan membincangkan program Java untuk mencari nombor perdana dan palindrom menggunakan benang dalam persekitaran berbilang benang. Di sini, benang merujuk kepada sub-proses kecil bagi operasi besar.

Sebuah program untuk mencari nombor perdana dan palindrom menggunakan pelbagai benang

Kami akan menggunakan multithreading dalam Java untuk mencari nombor perdana dan palindrom seperti berikut:

kaedah

  • Buat kelas bernama 'Thrd' dan tentukan dua kaedah statik 'operation1()' dan 'operation2()' di dalamnya, dan tentukan parameter yang sepadan.

  • Takrifkan logik nombor palindromik dalam "operasi1()" dan logik nombor perdana dalam "operasi2()". Nombor perdana ialah integer dengan hanya dua faktor 1 dan nombor itu sendiri, manakala palindrom membaca ke belakang sama seperti ke hadapan.

  • Selanjutnya, buat dua kelas Benang. Dalam kelas utas pertama, panggil kaedah "operasi1()" dengan menghantar parameter. Begitu juga, panggil kaedah "operasi2()" dalam kelas benang kedua.

  • Akhir sekali, buat dua objek untuk kelas benang dalam kaedah utama dan laksanakannya menggunakan kaedah terbina dalam "start()".

CONTOH

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();  
   }    
}

OUTPUT

23 is a prime number
212 is a Palindrome number

KESIMPULAN

Kami memulakan artikel ini dengan memperkenalkan multithreading dan threading. Kami kemudiannya menentukan penyataan masalah dan matlamat kami, iaitu untuk mencari nombor perdana dan palindrom menggunakan multithreading. Dalam bahagian seterusnya, kita membincangkan penyelesaian kepada masalah yang diberikan melalui program contoh. Dalam penyelesaian kami, kami mencipta dua benang berasingan untuk mengendalikan mencari nombor perdana dan palindrom.

Atas ialah kandungan terperinci Bagaimana untuk mencari nombor perdana dan palindrom di Jawa menggunakan multithreading?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam