public void startOrder(LinkedHashMap<String,Food> passinFood){                int custID=0;
                System.out.println("Welcome");
System.out.println("press 1 to buy");

Scanner keyboard = new Scanner(System.in);

custID = keyboard.nextInt();
if(custID==1){
displayOrderMenu(passinFood);
}
        }
public void displayOrderMenu(LinkedHashMap<String,Food> passinFood)
{
.....
}displayOrderMenu执行结束后,怎样去重新开始startOrder? 
用这个?this.startOrder(passinFood)

解决方案 »

  1.   

    方法很多最菜鸟的是这样。
    public static void main(String[] args){
        类名 instance = new 类名();
        int count = 100;//任何你想的数字
        while(count>0){
         instance.startOrder(passinFood);
         count--;
       }
    }
      

  2.   

    public void displayOrderMenu(LinkedHashMap<String,Food> passinFood)
    {
    .....
    this.startOrder(passinFood);
    }
    是这个意思?
      

  3.   

    如果这样的话,那displayOrderMeny() 需要带两个参数了, 因为startOrder()是两个参数.估计初学者开始都会遇到这个破问题,但是经常表述不清楚 - - 
      

  4.   

    public void startOrder(LinkedHashMap<String,Food> passinFood){                int custID=0;
                    System.out.println("Welcome");
            System.out.println("press 1 to buy");
            
            Scanner keyboard = new Scanner(System.in);
            
            custID = keyboard.nextInt();
            if(custID==1){        
            displayOrderMenu(passinFood);
              //这意思?
               startOrder(passinFood);//自己掉自己 直到不满足条件
            }
             
                  
            }
    可能是没看明白你的意思
      

  5.   

    楼主的意思是不是这样的:
     public void startOrder(LinkedHashMap<String,Food> passinFood){
     ........
     displayOrderMenu(passinFood);
    }
    public void displayOrderMenu(LinkedHashMap<String,Food> passinFood)
    {
    .....
    }执行完displayOrderMenu(passinFood)后,程序又重新开始执行startOrder....
    public static void main(String[] args){
        类名 instance = new 类名();
        boolean flag = true ;
       while(flag){
        instance.startOrder
    }