将用户输入中的许多变量放入数组列表中

时间:2012-02-11 10:41:33

标签: java variables arraylist

我正在编写一个程序,要求用户输入一些条目,如姓名,姓氏等,然后将所有这些条目存储在一个arraylist的一个位置。换句话说,变量(姓名,姓氏,电话)将被添加到arraylist的位置0。

我找到的困难是获取所有这些变量并将它们存储到数组列表的位置。有人能帮我吗 ?感谢。

public class Loans
{
    ArrayList lns = new ArrayList();

    void LoansInput ()
    {
           // Add New Loan Button  

           // Requesting DVD ID
                    String dvdid;
                    dvdid =JOptionPane.showInputDialog("Enter DVD ID Number");

            // Requesting Member Name & Surname
                    String namesurname;
                    namesurname = JOptionPane.showInputDialog("Client Name & Surname");

            // Requesting Member ID Number
                    String mid;
                    mid =JOptionPane.showInputDialog("Client ID Number");

            // Requesting Member ID Number
                    String telephone;
                    telephone =JOptionPane.showInputDialog("Client Telephone Number");

            // Requesting Rental Date
                    String rentaldate;
                    rentaldate =JOptionPane.showInputDialog("Rental Date (DD-MM-YY)");                                    

            // Requesting Return Date
                    String returndate;
                    returndate =JOptionPane.showInputDialog("Return Date (DD-MM-YY)");

为了获得所有这些变量并将它们放在一个位置的Arraylist lns中,我应该在这里添加什么? (不是每个不同地点的入口)

5 个答案:

答案 0 :(得分:1)

一个好的方法是创建一个User对象,例如,(getter和setter被遗漏)

public class User {
   private Stringg surname;
   private String memberId;
   private String telephone;
   // etc. 
}

然后您可以存储User个对象的列表

List<User> users = new LinkedList<User>();

您可以创建用户对象并从您获得的输入中填充它,例如

User user = new User();
String surname = JOptionPane.showInputDialog("...");
user.setSurname(surname);

users.add(user);

答案 1 :(得分:0)

为什么不创建一个包含所需字段的类Dvd并将其存储在ArrayList中?

答案 2 :(得分:0)

你肯定要为这些变量创建课程,让我们说DVD,然后你就可以在你的代码中使用它了

List<DVD> arrayList = new ArrayList<DVD>(); //always use a raw types (List)
DVD dvd = new DVD();
dvd.setId(JOPtionPane.showInputDialog("Enter ID");
//and so on, when you finish, just put the object in the array
arrayList.add(dvd);

你的DVD对象应该覆盖hashCode和equals方法,这样你就可以有效地搜索ArrayList中的DVD对象

答案 3 :(得分:0)

首先创建DVD对象,如下所示......

class DVD {

    private int dvdId;
    .
    .
    .
    .

    //now set getter setters
    public void setdvdId(int dvdId) {
    this.dvdId = dvdId
    }

    public int getdvdId() {
    return dvdId;
    }

    // similarly for all field
}

然后在arraylist中使用DVD对象,如下所示

class MyProgram {
    public static void main (String args[]) {


    List<DVD> arrayList = new ArrayList<DVD>();

    DVD myDVD = new DVD();
    myDVD.setdvdId(Integer.parseInt(JOPtionPane.showInputDialog("Enter ID")));
    // similarly add other
    .
    .
    .
    .
    .

    arrayList.add(myDVD)

    // similarly add other
    }
}

祝你好运!!!

答案 4 :(得分:0)

使用您需要的所有变量创建一个类,并为每个变量创建对象并将它们放入ArrayList中。我认为它解决了你的问题。