我想在ArrayList中的同一个索引中添加一些不同的类型元素。例如:
List account= new ArrayList();
String name;
int number;
float money;
account.add(0,name);
account.add(1,number);
account.add(2,money);
但是现在,我想把String name,int number和float money保存到同一个索引中。如何做?如果Arraylist不能。我该怎么做呢?
答案 0 :(得分:2)
我想把String name,int number和float money保存到 相同的指数。怎么做?
您应该创建一个名为Account
的模型类。比定义List<Account>
之类的列表。
class Account{
String name;
int number;
float money;
// Constructor, Getter setter etc.....
}
List<Account> list= new ArrayList<Account>();
list.add(new Account("Name", 123, 50.0));
比,帐户信息将在同一索引处的帐户实例处。您可以使用list.get(index)
方法访问帐户数据。
答案 1 :(得分:1)
Alexis C.是对的(在问题的评论中)。 您必须使用类来表示帐户是什么。 然后,您将能够为所有帐户创建此类的实例。 示例:
class Account {
String name;
int number;
float money;
Account(String name, int number, float money) {
this.name = name;
this.number = number;
this.money = money;
}
}
// And somewhere else you'll want to use that class :
List<Account> accounts = new ArrayList<>();
account.add(new Account("Account1", 1, 1f));
account.add(new Account("Account2", 2, 2f));
account.add(new Account("Account3", 3, 3f));
我建议你考虑学习基本的面向对象编程(即:组合,继承,多态)
希望这个例子有所帮助。
PS:在现实生活中,我建议使用BigDecimal类来处理金钱,因为float(和double)有精确问题。