首页 > 解决方案 > 这段代码似乎编译不干净

问题描述

我正在为一家餐馆用 Java 创建一个程序。我正在使用ArrayList,但由于某种原因,我的入门课程似乎没有在主菜单中运行。

这是我的入门课程:

import java.util.ArrayList;

public class Starter
{
    Starter()
    {  
        String[] myList = {"Coffee", "Tea", "Somosas", "Cake"};
        //System.out.println(myList[]);
    }
}

这似乎是正确的,但是当我尝试从主菜单中进行选择时,它似乎不起作用。

主菜单:

import java.util.Scanner; 
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class Menu
{
    static Scanner input = new Scanner(System.in);

    public static void main(String[]args)
    {
        System.out.println("1=Starter");
        System.out.println("2= Main Course");
        System.out.println("3=Desert");

        int a =input.nextInt();
        input.nextLine();

        if(a==1)
        {
            System.out.println("Starter");
            Starter OS1=new Starter();
            System.out.println("Your starter is "+OS1.myList[]);

        }
    else if(a==2)
    {

        System.out.println("Main Course");
        MaiinCourse OMC1=new MaiinCourse();
        System.out.println("Your MainCourse is "+OMC1.MCname);
        System.out.println("The price is "+OMC1.MCprice);
    }

    else if(a==3)
    {
        System.out.println("Desert");
        Deserrt ODS1=new Deserrt();
        System.out.println("Your Desert is "+ODS1.DSname);
        System.out.println("The price is "+ODS1.DSprice);
    }
    else 
    {
        System.out.println("End");
        System.out.println("Program Closing");

       System.exit(1);

    }
}
}

我得到的错误是:

'.class' expected System.out.println("Your starter is "+OS1.myList[]);

如何解决这个问题?

当我运行主菜单时,它应该允许我从数组列表中进行选择。

标签: javacompiler-errors

解决方案


我对您的代码做了一些更改。现在它起作用了。试试看。

import java.util.Arrays;
import java.util.Scanner;

public class Menu
{
  static Scanner input = new Scanner(System.in);

  public static void main(String[]args)
  {
    System.out.println("1=Starter");
    System.out.println("2= Main Course");
    System.out.println("3=Desert");

    int a = input.nextInt();
    input.nextLine();

    if (a == 1)
    {
      System.out.println("Starter");
      Starter OS1 = new Starter();
      System.out.println("Your starter is " + Arrays.toString(OS1.getMyList()));

    }
  }
}

class Starter
{
  private String[] myList = {"Coffee", "Tea", "Somosas", "Cake"};

  public String[] getMyList()
  {
    return myList;
  }
}

推荐阅读