Java编码数组列表麻烦

时间:2016-12-08 15:34:44

标签: java arraylist

我对java非常缺乏经验,我需要帮助我的学校辅导。我不知道如何获得用户输入。代码是提供给我们的,我们只需要用代码代替虚线来完成程序,但我被困住了。 我有两个班,他们在这里。

  /**
     * Write a description of class PhoneBookEntry here.
     * 
     * @author (your name) 
     * @version (a version number or a date)
     */
    public class PhoneBookEntry
    {
       private String name;         // Person's name
       private String phoneNumber;  // Person's phone number

       /**
        * The constructor initializes the person's name
        * and phone number.
        */

       public PhoneBookEntry(String n, String pn)
       {
          name = n;
          phoneNumber = pn;
       }

       /**
        * The setName method sets the person's name.
        */

       public void setName(String n)
       {
          name = n;
       }

       /**
        * setPhoneNumber method sets the person's 
        * phone number.
        */

       public void setPhoneNumber(String pn)
       {
          phoneNumber = pn;
       }

       /**
        * The getName method returns the person's 
        * name.
        */

       public String getName()
       {
          return name;
       }

       /**
        * The getPhoneNumber method returns the
        * person's phone number.
        */

       public String getPhoneNumber()
       {
          return phoneNumber;
       }
    }




        /**

 * Chapter 7
 * Lab Assignment: Phone Book ArrayList
 * This program demonstrates the PhoneBookEntry class.
 */

public class PhoneBookDemo
{
   public static void main(String args[])
   {
      // Constant for the numer of entries.
      final int NUM_ENTRIES = 5;

      // Create an ArrayList to hold PhoneBookEntry objects.
      ArrayList<PhoneBookEntry> list = 
         new ArrayList<PhoneBookEntry>();

      // Tell the user what's about to happen.
      System.out.println("I'm going to ask you to enter " +
                         NUM_ENTRIES + " names and phone numbers.");
      System.out.println();

      // Store PhoneBookEntry objects in the ArrayList.
       for (int i = 0; i < NUM_ENTRIES; i++)
      {
         -----------------
         System.out.println();
      }

      System.out.println("Here's the data you entered:");

      // Display the data stored in the ArrayList.
      for (int i = 0; i < list.size(); i++)
      {
         System.out.println(list);
      }
   }

   /**
    * The getEntry method creates a PhoneBookEntry object
    * populated with data entered by the user and returns
    * a reference to the object.
    */

   public static PhoneBookEntry getEntry()
   {
      // Create a Scanner object for keyboard input.
      Scanner keyboard = new Scanner(System.in);

      // Variables to hold a person's name and
      // phone number.
      String name;
      String phoneNumber;

      // Get the data.
      System.out.print("Enter a person's name: ");
      name = keyboard.nextLine();
      System.out.print("Enter that person's phone number: ");
      phoneNumber = keyboard.nextLine();

      // Create a PhoneBookEntry object.
      PhoneBookEntry entry = new PhoneBookEntry(name, phoneNumber);

      // Return a reference to the object.
      return entry;
   }

   /**
    * The displayEntry method displays the data stored
    * in a PhoneBookEntry object.
    */

   public static void displayEntry(PhoneBookEntry entry)
   {
      System.out.println("------------------------------");
      System.out.println("Name: " + entry.getName());
      System.out.println("Phone number: " + entry.getPhoneNumber());
   }
}

2 个答案:

答案 0 :(得分:0)

将这些内容添加到您的代码中:

主课外的

import java.util.Scanner;
主要课程内的

Scanner input = new Scanner(System.in);
System.out.println("Asking for input");
String userResponse = input.nextLine();

对于Int而不是字符串:

Int userResponse = input.nextInt();

程序将暂停并等待输入。然后,您的userResponse现在将包含用户输入的内容。

答案 1 :(得分:0)

在循环(虚线)中,您只需添加:

list.add(getEntry());

流的处理已在getEntry()方法中实现。