24小时热门版块排行榜    

查看: 1690  |  回复: 5

chengxiaoni

新虫 (初入文坛)

[求助] Java小白刚学多线程,但是写的这个运行结果跟预期不一样,大神们谁指导一下(在线等) 已有1人参与

public class TestThread {
        public static void main(String args[]) {
                RunThread r1 = new  RunThread();
                r1.start();
                for(int i=0;i<100;i++) {
                        System.out.println("-------------"+i);
                }
        }
}

class RunThread extends Thread {
        public void run() {
                for(int i=0;i<100;i++) {
                        System.out.println(i);
                }
        }
}



预期是        for(int i=0;i<100;i++) {
                        System.out.println("-------------"+i);
运行一会       
for(int i=0;i<100;i++) {
                        System.out.println(i);
运行一会
但是实际是一个运行完了在运行另外一个循环,为啥子呢
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

a3722

银虫 (初入文坛)


jjdg: 金币+1, 感谢参与 2018-04-01 18:26:04
run()方法只是类的一个普通方法而已,如果直接调用Run方法,程序中依然只有主线程这一个线程,其程序执行路径还是只有一条,还是要顺序执行,还是要等待run方法体执行完毕后才可继续执行下面的代码,这样就没有达到写线程的目的。

发自小木虫Android客户端
2楼2018-04-01 15:16:03
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

a3722

银虫 (初入文坛)

引用回帖:
2楼: Originally posted by a3722 at 2018-04-01 15:16:03
run()方法只是类的一个普通方法而已,如果直接调用Run方法,程序中依然只有主线程这一个线程,其程序执行路径还是只有一条,还是要顺序执行,还是要等待run方法体执行完毕后才可继续执行下面的代码,这样就没有达到 ...

https://zhidao.baidu.com/question/41360200.html

发自小木虫Android客户端
3楼2018-04-01 15:21:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

Eavenyang

金虫 (初入文坛)

白骨精

【答案】应助回帖

感谢参与,应助指数 +1
你在主方法中调用了run方法,所以在程序运行时,主线程走到run方法时会先执行run方法里的内容,等到run方法中的内容执行完毕之后才会继续执行main方法中剩下的内容,所以就是先输出0--99,再输出----------0~99,如果想交叉输出,可以在方法中加上Thread.sleep( ),做一个延迟输出,就可以达到交叉输出的效果了
厚积薄发
4楼2018-04-03 20:12:20
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

匿名

用户注销 (小有名气)

本帖仅楼主可见
5楼2018-04-08 23:14:54
已阅   申请程序强帖   回复此楼   编辑   查看我的主页

Eavenyang

金虫 (初入文坛)

白骨精

引用回帖:
5楼: Originally posted by 775131429 at 2018-04-08 23:14:54
3q,已经搞定...

不客气
厚积薄发
6楼2018-04-10 09:39:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 chengxiaoni 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 关于filecode,很负责任的告诉大家 +6 爱看书的可乐 2026-08-08 7/350 2026-08-08 22:13 by a_niu
[基金申请] 2026国自然放榜时间 +3 布布和一二 2026-08-08 3/150 2026-08-08 18:15 by Lightingo
[基金申请] 好奇怪的filecode +3 布布和一二 2026-08-08 4/200 2026-08-08 17:46 by zhanghaozhu
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 qTvzQBRAHjCi 2026-08-07 4/200 2026-08-08 17:27 by oEVWOejN9taj
[论文投稿] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 qTvzQBRAHjCi 2026-08-07 4/200 2026-08-08 16:47 by oEVWOejN9taj
[基金申请] fileCode有新解读? +9 Tide man 2026-08-08 17/850 2026-08-08 14:56 by archvillain
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 HEQlVqMTIA7d 2026-08-07 6/300 2026-08-08 14:39 by oEVWOejN9taj
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 HEQlVqMTIA7d 2026-08-07 5/250 2026-08-08 14:27 by oEVWOejN9taj
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 HEQlVqMTIA7d 2026-08-07 5/250 2026-08-08 14:22 by oEVWOejN9taj
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 KXLV3nuBVBY7 2026-08-07 5/250 2026-08-08 14:07 by oEVWOejN9taj
[论文投稿] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 KXLV3nuBVBY7 2026-08-07 6/300 2026-08-08 14:01 by oEVWOejN9taj
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 Vi50GxzrFcSG 2026-08-07 6/300 2026-08-08 10:19 by 3OOjAIS77qg2
[基金申请] 基金中了 +14 laoda193707 2026-08-06 14/700 2026-08-08 00:23 by 实验小白ha
[基金申请] 听说今天filecode变了 +24 布布和一二 2026-08-06 47/2350 2026-08-07 16:02 by zhiyanjiang
[基金申请] filecode与中标关系的预测 +3 布布和一二 2026-08-07 3/150 2026-08-07 15:09 by gltch
[基金申请] filecode变化情况 +6 布布和一二 2026-08-07 22/1100 2026-08-07 14:45 by 且听虎啸
[基金申请] filecode +8 布布和一二 2026-08-06 11/550 2026-08-06 20:41 by tangpu318
[基金申请] 求各位大神看下 100+6 hpkpkpkp 2026-08-05 33/1650 2026-08-06 14:49 by zhiyanjiang
[基金申请] 纯娱乐,不喜欢勿喷 +7 Tide man 2026-08-04 10/500 2026-08-04 15:10 by loufangrui
[基金申请] 什么时候能放榜呀? +3 Jacob678 2026-08-03 3/150 2026-08-03 16:14 by gltch
信息提示
请填处理意见