Java - 我需要在main方法中使用一个变量boolean,在外部初始化但在同一个类中

时间:2018-04-09 12:53:00

标签: java boolean main

布尔值必须在main方法之外,因此其他方法可以操作它。我到处搜索,找不到合适的答案,因为我偶然发现的是布尔方法作为方法的解决方案。它必须是一个简单的布尔值,它不能是静态的。没有太多时间,所以任何帮助都会很棒。感谢。

public class myClass {

   private int[][] holdsStuff;
   private boolean isNeeded;

   public setFalse (){
   }

   public setTrue () {
   }

   public static void main(String[] args) {
      //call methods to change isNeeded
      //require isNeeded to prevent invalid changes being made to holdsStuff
   }
}

4 个答案:

答案 0 :(得分:1)

如果类成员isNeeded不是静态的,那么它必须属于myclass的实例,您可以创建一个新实例并操作此实例:

public class myClass {

    private int[][] holdsStuff;
    private boolean isNeeded;

    public void setFalse (){
        isNeeded = false;
    }

    public void setTrue () {
        isNeeded = true;
    }

    public static void main(String[] args) {
        myClass mc = new myClass();
        myClass.setFalse();

    }
}

答案 1 :(得分:0)

public class myClass {

       private int[][] holdsStuff;
       private boolean isNeeded;

       public void setFalse (){
       isNeeded =false;
       }

       public void setTrue () {
        isNeeded = true;
       }

       public static void main(String[] args) {

           myClass myclass = new myClass();
           myclass.setFalse();
           myclass.setTrue();
          //call methods to change isNeeded
          //require isNeeded to prevent invalid changes being made to holdsStuff
       }
    }

答案 2 :(得分:0)

因为main是静态的,所以使用static keyward或者创建同一个类的实例。使用静态键如下:

public class myClass {

   private int[][] holdsStuff; // make this static if you are also this inside main
   private static boolean isNeeded;

   public static setFalse (){
   }

   public static setTrue () {
   }

   public static void main(String[] args) {
      //call methods to change isNeeded
      //require isNeeded to prevent invalid changes being made to holdsStuff
   }
}

答案 3 :(得分:0)

您希望在其他方法和 main 方法中使用 isNeeded ,这是静态静态方法处理静态数据read this。所以你想要做的是让这个类的实例在 main 方法中调用 isNeeded

 public static void main(String[] args) {
       myClass myclass = new myClass();          
       boolean isNeeded = myclass.isNeeded;
   }