任何时候努力都不会迟
2020-08-06 20:45
采纳率: 75%
浏览 79
已采纳

有关while循环的一个小疑问

今天看到这么一个语句:
public static volatile boolean isWinnerFound = false;

    public static List<String> actions = new ArrayList<>();

    static {
        actions.add("开始游戏");
        actions.add("收集资源");
        actions.add("增长经济");
        actions.add("杀死敌人");
    }

    protected Gamer gamer1 = new Gamer("史密斯", 3);
    protected Gamer gamer2 = new Gamer("琼斯", 1);
    protected Gamer gamer3 = new Gamer("盖茨", 5);

    @Override
    public void run() {
        gamer1.start();
        gamer2.start();
        gamer3.start();

        while (!isWinnerFound ) {

        }
        gamer1.interrupt();
        gamer2.interrupt();
        gamer3.interrupt();
    }

这个里面的while()语句是什么意思

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • threenewbee 2020-08-07 08:31
    已采纳

    这个while是等待 isWinnerFound 被设置为 true
    但是你的代码不完整,应该有别的线程的代码里有
    isWinnerFound = true;
    的代码,程序才能停下来。

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • jingluan666 2020-08-07 08:11

    就是当isWinnerFound是false时,一直循环,不让程序往下进行

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题