[英]Can I use public void from a class to make use of it in ArrayList to add age and name?
我是 Java 新手,我正在努力了解构造、类和对象。 如果您觉得这些中的任何一个很愚蠢,我深表歉意。
我的任务是创建一个 ArrayList 来保存 Data 类型的项目(我的班级)。 使用 .add 方法 - 我应该添加一定数量的姓名和年龄然后输出。
我已经完成了,但我想知道我是否可以使用类中的 SetAge 和 SetAge 等函数在我的 ArrayList 中使用来创建一个新人,然后像其他人一样将其输出。 还有其他方法吗?
感谢您的帮助和解释。
下面是我的代码;
import java.util.ArrayList;
public class workingOn {
public static void main (String[] args)
{
Data Fred = new Data("Fred", 21);
Data Jo = new Data("Jo", 43);
Data Zoe = new Data("Zoe", 37);
ArrayList<Data> myArray = new ArrayList<Data>();
myArray.add(Fred);
myArray.add(Jo);
myArray.add(Zoe);
for (Data temp : myArray)
{
System.out.println(temp.toString());
}
}
}
下面是我的课;
public class Data {
private String name;
private int age;
Data(String n,int a)
{
name = n;
age = a;
}
public String GetName()
{
return(name);
}
public void SetName(String n)
{
name = n;
}
public int GetAge()
{
return(age);
}
public void SetAge(int a)
{
age = a;
}
public void Print()
{
System.out.print(("("+ GetName() ));
System.out.print(",");
System.out.print(GetAge());
System.out.print(") ");
}
//i made this so I don't output the object id
public String toString() {
return (name + ", " + age);
}
}
通过评论,我猜您想以某种方式为您设计的类使用 setter 方法(setName() 和 setAge())。 最简单的方法是:
Data d = new Data("tempName", 10);
myArray.add(d);
这基本上创建了一个 Data 类型的对象并将其添加到数组列表中。 假设您要更改刚刚添加的此人的姓名和年龄,那么您应该这样做:
myArray.get(myArray.size() - 1).setName("newName");
myArray.get(myArray.size() - 1).setAge(18);
添加一些解释,当您将对象添加到数组列表时,它总是添加到最后。 我们使用size()
方法来获取 Arraylist 中对象的数量。 由于索引从 0 开始,我们使用myArray.size() - 1
。 我们使用.get()
方法从 arraylist 中检索对象,该对象将一个数字作为参数并返回该索引处的对象。
结合这两者,我们在最后一个可能的索引处获取对象,并在其上调用setName()
和setAge()
函数。 希望这可以帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.