gpt4 book ai didi

java - 名称后菜单循环,Java

转载 作者:行者123 更新时间:2023-12-02 03:51:48 24 4
gpt4 key购买 nike

我正在尝试创建一个带有菜单系统的小型酒店应用程序。到目前为止,用户被要求输入房间号(0-9)和房间名称,一旦输入,我希望用户返回到可以输入其他菜单选项的菜单。我认为其他菜单选项当前也不起作用:(

这是迄今为止我的代码:

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");
}
}

最佳答案

您的 while 循环等待 menuEntry1 不同,但您永远不会更改 menuEntry 内的 menuEntry环形。将其更改为do while循环

do { 
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();
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 ;
}
} while (menuEntry.equals("1"));

您还应该将其余选项插入循环中,并使条件与菜单中的选项相匹配。

使用 while 循环的另一个选项

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 ;
}

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();
}

关于java - 名称后菜单循环,Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35815746/

24 4 0