0

私は独学で Java を学ぼうとしており、BlueJ の例を調べ始めました。

手術システムの場合、患者とその住所を配列に追加し、患者を追加して患者をリストする機能を持たせる必要があります。

この例では、ベクトルとハードコードを使用してベクトルに名前を追加していますが、配列を使用して、ユーザーが名前とアドレスを配列に追加できるようにしたいと考えています。

誰でもガイダンスを提供できますか?

私は以下を持っていますが、ここからどこへ行くべきかわかりません。

public class Patient
{
    public String name;
    public String address;

   public Patient(String n, String a) {
      name = n;
      address = a;
   }


}
4

2 に答える 2

5

この種の情報は、ここで十分に文書化されています。

あなたの場合、タイプの配列を作成したいようですPatient

10 人の患者を保持できる配列を作成するための構文は次のとおりです。

Patient[] patients = new Patients[10];

そして、ドキュメントを読んだら、私が提供した構文を使用して目的の機能を取得できるようになります:)

于 2013-03-05T13:40:24.930 に答える
1

これは宿題に非常によく似ているため、正確な答えを提供するつもりはありませんが、配列を使用したホテルの実装例を次に示します。それを調べて、それを理解しようとします。そうすれば、患者の問題を自分で解決できるようになります。

import java.util.*;

class Customer
{
    private String name;
    private int room;

    public void setName(String name)
    {
        this.name=name;
    }

    public String getName()
    {
        return this.name;
    }

    public void setRoom(int room)
    {
        this.room=room;
    }

    public int getRoom()
    {
        return this.room;
    }
}

class Hotel
{
    public static void initialize(Customer RoomList[])
    {
        for(int i=0; i<RoomList.length; i++)
        {
            RoomList[i]=new Customer();
            RoomList[i].setName("EMPTY");
            RoomList[i].setRoom(i+1);
        }
    }

    public static void viewList(Customer RoomList[])
    {
        for(int i=0; i<RoomList.length; i++)
        {
            if(RoomList[i].getName()=="EMPTY")
                System.out.println("Room number "+RoomList[i].getRoom()+" is vacant.");
            else
                System.out.println("Room number "+RoomList[i].getRoom()+" is ocupied by "+RoomList[i].getName()+".");
        }
        System.out.println();
    }

    public static boolean addCustomer(Customer RoomList[], String name)
    {
        for(int i=0; i<RoomList.length; i++)
            if(RoomList[i].getName().equals("EMPTY"))
            {
                RoomList[i].setName(name);
                return true;
            }
        return false;
    }

    public static void showEmptyRooms(Customer RoomList[])
    {
        System.out.println("Available rooms are:");
        for(int i=0; i<RoomList.length; i++)
            if(RoomList[i].getName()=="EMPTY")
                System.out.println(RoomList[i].getRoom());
        System.out.println();
    }

    public static boolean deleteCustomer(Customer RoomList[], String name)
    {
        for(int i=0; i<RoomList.length; i++)
            if(RoomList[i].getName().equals(name))
            {
                RoomList[i].setName("EMPTY");
                System.out.println("Deletion successful.\n");
                return true;
            }
        return false;
    }

    public static int getIndex(Customer RoomList[], String name)
    {
        for(int i=0; i<RoomList.length; i++)
            if(RoomList[i].getName().equals(name))
                return i;
        return -1;
    }

    public static void main(String[] args)
    {
        int numOfCustomers=10;
        Customer[] RoomList = new Customer[numOfCustomers];
        String name;
        initialize(RoomList);
        Scanner input = new Scanner(System.in);
        int option=0;

        do
        {
            System.out.println("        Hotel Booking Options");
            System.out.println("=====================================");
            System.out.println("1: To View all rooms");
            System.out.println("2: To Add customer to a room");
            System.out.println("3: To Display empty rooms");
            System.out.println("4: To Delete customer from a room");
            System.out.println("5: Find room from customer name");
            System.out.println("0: Exit");

            System.out.print("\nEnter your choice: ");
            option = input.nextInt();
            System.out.println();

            switch(option)
            {
                case 1:
                {
                    viewList(RoomList);
                    break;
                }
                case 2:
                {
                    System.out.print("Customer's name: ");
                    name=input.next();
                    System.out.println();
                    if(!addCustomer(RoomList, name))
                        System.out.println("No rooms available!");
                    break;
                }
                case 3:
                {
                    showEmptyRooms(RoomList);
                    break;
                }
                case 4:
                {
                    System.out.print("Customer's name: ");
                    name=input.next();
                    System.out.println();
                    deleteCustomer(RoomList, name);
                    break;
                }
                case 5:
                {
                    System.out.print("Customer's name: ");
                    name=input.next();
                    System.out.println();
                    System.out.println("Customer's room: "+RoomList[getIndex(RoomList, name)].getRoom()+"\n");
                    break;
                }
                case 0:
                {
                    System.out.println("\nThank you!\n");
                    break;
                }
                default:
                {
                    System.out.println("Invalid option!\n");
                    break;
                }
            }


        }while(option!=0);
    }
}
于 2013-03-05T13:53:43.607 に答える