有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

多线程多线程在java中打印偶数和奇数?

就语法而言,我对Java中线程和多线程的区别有点困惑。我需要写一个程序来打印偶数0到30,然后使用线程和另一个程序来做同样的事情使用多线程。我写了一个程序,它运行并执行它应该执行的操作,但我不知道它是线程还是多线程,也不知道如何执行它没有执行的操作。这是我的程序-

public class OddEven extends Thread {
public static void main(String args[]){
    Runnable r1 = new Runnable1();
    Thread t1 = new Thread(r1);
    Runnable r2 = new Runnable2();
    Thread t2 = new Thread(r2);
    t1.start();
    t2.start();
  }
}
class Runnable1 implements Runnable{
public void run(){
    for(int i=0; i<=30; i+=2) {
        System.out.println(i);
    }
  }
}
class Runnable2 implements Runnable{
public void run(){
    for(int i=1; i<=30; i+=2){
        System.out.println(i);
    }
  }
}

这个程序会被认为只是一个线程吗

public class OddEven {
public static void main(String args[]){
    for(int i=0; i<=30; i+=2) {
        System.out.println(i);
    }
    for(int i=1; i<=30; i+=2){
        System.out.println(i);
    }
}

}


共 (1) 个答案

  1. # 1 楼答案

    多线程使您能够同时执行多个工作

    例如,如果你做了一个游戏,其中一个男孩向前移动;继续开火。如果你使用单线程系统,那么要么一个男孩可以向前移动,要么一次可以向他的敌人开火。他不能同时做这两项工作

    在您的例子中,当您调用t1.start();时,将启动一个新线程,该线程将执行Runnable1's方法。然后你调用了t2.start();,它会立即启动另一个线程&;您的Runnable2's方法将被执行

    这两种方法将同时执行。如果不使用多线程,那么只有在完成第一个循环后,下一个循环才会开始

    多线程主要用于主线程可能会处理很长时间的程序;你想使用程序的其他功能

    希望这有帮助