Java BinaryTree-带开关盒

Java BinaryTree-带开关盒,java,switch-statement,binary-tree,Java,Switch Statement,Binary Tree,我玩了一些二叉树,并构建了一个菜单,当我点击创建一棵树时,用户可以选择是构建一棵二叉树,向他构建的二叉树插入一个值,还是删除它。树被创建了,然后菜单又出现了,现在我想在这棵树中放一个数字,但是这个变量没有设置在案例中,每个案例应该设置它的变量吗?或者您可以使用全局变量? 这是我的菜单类代码。 import java.util.Comparator; import java.util.Scanner; public class TreeMenu { public static void


我玩了一些二叉树,并构建了一个菜单,当我点击创建一棵树时,用户可以选择是构建一棵二叉树,向他构建的二叉树插入一个值,还是删除它。树被创建了,然后菜单又出现了,现在我想在这棵树中放一个数字,但是这个变量没有设置在案例中,每个案例应该设置它的变量吗?或者您可以使用全局变量?
这是我的菜单类代码。

import java.util.Comparator;
 import java.util.Scanner;


 public class TreeMenu {

 public static void main(String[] args) {

     while(true ){
         System.out.println("\n------------Menu-----------");
         System.out.println("1. Create Tree");
         System.out.println("2. Delete Tree");
         System.out.println("3. Insert Value INTO the tree");
         System.out.println("4. Exit ");
         System.out.println("Please Select Your Choice");

         Scanner choice = new Scanner(System.in); 
         int i = choice.nextInt();
         if(i>0 && i<=4){
         switch (i)
          {

            case 1:{

                System.out.println("Creating a Tree Please Wait........");
                Comparator comp = new IntegerComparator();
                BST tree1 = new BST(comp);
                break;
            }
            case 2:{
                System.out.println("You Chose TWO");
                break;
            }
            case 3:{
                Scanner Number = new Scanner(System.in); 
                 int num = Number.nextInt();
                 tree1.insert(num);

            }
            case 4:{
                System.exit(0);

            }

           }

          }
         else{
             System.out.println("There is no number in the menu like that "+i);
             System.exit(0); 

         }
     }

 }

 }
import java.util.Comparator;
导入java.util.Scanner;
公共类树{
公共静态void main(字符串[]args){
while(true){
System.out.println(“\n---------菜单----”;
System.out.println(“1.创建树”);
System.out.println(“2.删除树”);
System.out.println(“3.在树中插入值”);
System.out.println(“4.Exit”);
System.out.println(“请选择您的选项”);
扫描仪选择=新扫描仪(System.in);
int i=choice.nextInt();

if(i>0&&i将
tree1
声明为私有全局变量

  public class TreeMenu {
    private static BST tree1 = null;
    .....
现在在
开关案例1
中实例化
tree1
,然后可以在
案例2中使用相同的树变量


需要注意的是,如果
tree1==null
,则需要在
情况2和3中执行错误检查,这意味着尚未创建树。

BST tree1
变量置于主while循环之外。