栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

编写一个具有两个线程的程序,第一个线程求10~20之间的素数和它们的和,第二个线程求1000~2000之间的素数和它们的和

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

编写一个具有两个线程的程序,第一个线程求10~20之间的素数和它们的和,第二个线程求1000~2000之间的素数和它们的和

实现思路:首先写一个判断素数的方法。
  public static boolean isPrime (int num) {
        int sqrt = (int) Math.sqrt (num);
        for (int i = 2 ; i <= sqrt ; i++) {
            if (num % i == 0) {
                return false;
            }
        }
        return true;
    }

接着创建两个线程,我这里用的是匿名内部类创建子类对象,重写run方法,让run方法执行判断素数的结果,如果是素数打印出来,定义一个sum累加和记录10-20的素数和。第二个线程也是一样的。

public class threadDemo12  extends  Thread {
    public static boolean isPrime (int num) {
        int sqrt = (int) Math.sqrt (num);
        for (int i = 2 ; i <= sqrt ; i++) {
            if (num % i == 0) {
                return false;
            }
        }
        return true;
    }
    public static void main (String[] args) {
        Thread t1 = new Thread () {
            @Override
            public void run () {
                int sum = 0;
                for (int k = 10 ; k <= 20 ; k++) {
                    if (isPrime (k)) {
                        sum += k;
                        System.out.print (k + " ");
                    }
                }
                System.out.println ("10-20的素数和"+sum);
            }

        };
            Thread t2 = new Thread () {
                @Override
                public void run () {
                    int sum = 0;
                    for (int k = 1000 ; k <= 2000 ; k++) {
                        if (isPrime (k)) {
                            sum += k;
                            System.out.print (k + " ");
                        }
                    }
                    System.out.println ("1000-2000的素数和"+sum);
                }
            };
            t1.start ();
            t2.start ();
        }
    }


执行结果:
![在这里插入图片描述](https://img-blog.csdnimg.cn/c5db351e820e46708bf03eebdb48489a.png)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/643146.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号