随机布尔值始终为假

时间:2018-10-30 21:40:53

标签: java

每当我创建一个妖精对象并调用isNice方法时,它总是返回false。但是当我执行System.out.println(nice)时,它是随机执行的。

import java.util.Random;

public class Goblin
{

    private boolean nice;
    private boolean isNice;


    public Goblin()
    {
        // initialise instance variables
          Random rand = new Random();
         boolean nice = rand.nextBoolean();

    }

    public boolean isNice()
    {
        if (nice){
            return true;
        }
        else 
            return false;
    }

}

1 个答案:

答案 0 :(得分:3)

boolean nice = rand.nextBoolean();

正在声明和分配局部变量。您没有分配该字段,因此在使用getter访问它时,它将始终具有其默认值false

丢弃boolean