我正尝试使用菜单系统创建一个小型酒店应用程序。到目前为止,用户被要求输入一个房间号码(0-9)和一个房间名称,一旦输入,我希望用户返回到其他菜单选项可以输入的菜单。我不认为其他菜单选项目前正在要么:(名称后的菜单循环,Java
这里是我到目前为止的代码:
package hotel;
import java.util.*;
public class Hotel2 {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
Room[] myHotel = new Room[10];
myHotel[0] = new Room();
myHotel[1] = new Room();
myHotel[2] = new Room();
myHotel[3] = new Room();
myHotel[4] = new Room();
myHotel[5] = new Room();
myHotel[6] = new Room();
myHotel[7] = new Room();
myHotel[8] = new Room();
myHotel[9] = new Room();
String roomName;
String menuEntry = null;
int roomNum = 0;
String[] hotel = new String[11];
for (int x = 0; x < 10; x++) hotel[x] = "";
initialise(hotel);
while (roomNum < 10)
{
System.out.println("Please enter one of the following options:\n1) Add customer\n2) Delete customer from room\n3)View all empty rooms\n4) Find a customer\n5) Load program from text file\n6) Order rooms alphabetically\n7) Store program into text file\n8) View all rooms\nInput:");
menuEntry = input.next();
while (menuEntry.equals("1"))
{
System.out.println("Enter room number (0-9):");
roomNum = input.nextInt();
if (roomNum < 10)
{
System.out.println("Enter name for room " + roomNum +" :") ;
roomName = input.next();
hotel[roomNum] = roomName ;
}
}
if (menuEntry.equals("V"))
{
for (int x = 0; x < 10; x++)
{
System.out.println("room " + x + " occupied by " + hotel[x]);
}
}
if (menuEntry.equals("E"));
{
}
if (menuEntry.equals ("D"))
{
System.out.println("Enter the room number which you would like to delete a customer from:");
roomNum = input.nextInt();
hotel[roomNum] = "empty";
}
}
}
private static void initialise(String hotelRef[]) {
for (int x = 0; x < 10; x++) hotelRef[x] = "empty";
System.out.println("initilise\n");
}
}
你应该正确地格式化代码。 – MikeCAT
@MikeCat固定感谢 – Oscar
我建议不要担心你的文本用户界面和更多关于该问题的API。让您的酒店和房间抽象化,用户界面将变得简单。两个提示:没有幻数(例如10个房间)并使用循环来填充该房间阵列。 – duffymo