Java For循环填充整个实例,而不是一个实例

Java For循环填充整个实例,而不是一个实例,java,arrays,for-loop,Java,Arrays,For Loop,我正在用Java创建一个预订系统,以防止重复预订我创建了一个for循环,一旦预订完成,该循环应将布尔值更改为booked,但是当我只需要一个预订实例时,它将所有预订更改为booked,这样其他人就无法进行预订 public static boolean booked; private void FSubmitActionPerformed(java.awt.event.ActionEvent evt) { for ( int i = 0; i < Airplane.Fseat.le

我正在用Java创建一个预订系统,以防止重复预订我创建了一个for循环,一旦预订完成,该循环应将布尔值更改为booked,但是当我只需要一个预订实例时,它将所有预订更改为booked,这样其他人就无法进行预订

public static boolean booked;

private void FSubmitActionPerformed(java.awt.event.ActionEvent evt) {  

for ( int i = 0; i < Airplane.Fseat.length; i++)
{
    String seat = FCol.getSelectedItem().toString() + FRow.getSelectedItem().toString();
    String items = Snack.getSelectedItem().toString() + "  " + Drink.getSelectedItem().toString();
    Airplane.Fseat[i] = seat;
    Airplane.item[i] = items;

    if (Airplane.Fseat[i] != null)
    {
        System.out.println("Seat number is First class " + Airplane.Fseat[i].toString() + "\n" +"Food and drink " + " " + Airplane.item[i].toString());
        i++;
    }

    else 
    {
        System.out.println("Cannot book already taken");
    }
}
publicstaticboolean;
私有void FSubmitActionPerformed(java.awt.event.ActionEvent evt){
对于(int i=0;i
您尚未设置任何条件来检查如何设置和选择特定座椅

因此,您需要将代码修改为:

    for ( int i = 0; i < Airplane.Fseat.length; i++)
        {

            String seat = FCol.getSelectedItem().toString() + FRow.getSelectedItem().toString();
            String items = Snack.getSelectedItem().toString() + "  " + Drink.getSelectedItem().toString();

        if(your_condition_to_check_if_this_seat_is_selcted ){       

          Airplane.Fseat[i] = seat;
          Airplane.item[i] = items;

         }

            if (Airplane.Fseat[i] != null)
            {
                System.out.println("Seat number is First class " + Airplane.Fseat[i].toString() + "\n" +"Food and drink " + " " + Airplane.item[i].toString());
                i++;
            }

            else 
            {
                System.out.println("Cannot book already taken");
            }
        }
for(int i=0;i
在测试是否为空之前,您设置了
飞机.Fseat[i]=seat;
。因此,您自然永远不会达到“无法预订已预订”你建议将其更改为什么?我不能说,我不确定FCol、FRow、零食或饮料是什么。此外,你提到一旦预订了某项内容,你将布尔值更改为true,但是我在你的代码中没有看到布尔值。当我不知道如何构造代码以匹配你的程序时,很难提出建议。抱歉,我更新了代码以显示布尔值和Fcol、Frow是存储在数组中的字段