class Buffer{
public String name;
public int id;
}
public class Main {
public static void main(String[] args) {
Vector<Buffer> vec = new Vector<Buffer>();
getName = G.sIn.ReadInputLine();
getID = G.sIn.ReadInt();
vec.name.add(getName); // error
vec.id.add( getID ); // error
}
}
我是 Java 新手。
但是,我想将两个变量保存到 vector 的 name 和 id 中并继续。
现在,我不知道如何正确实现。
最佳答案
vec
本身不是Buffer
类的实例,因此您不能访问 Buffer
类的数据成员或方法 vec
.
vec
是一个列表,它可以包含 Buffer
类的实例。
Vector<Buffer> vec = new Vector<Buffer>();
getName = G.sIn.ReadInputLine();
getID = G.sIn.ReadInt();
// create an instance of Buffer class
Buffer buff = new Buffer();
buff.name = getName;
buff.id = getID;
// add the instance of Buffer class in vec
vec.add(buff);
但是,在类中使用 public
数据成员并不是一个好习惯。 Buffer
类的所有数据成员都应该是private
并且应该使用构造函数
进行初始化。
class Buffer{
private String name;
private int id;
public Buffer(String name, int id) {
this.name = name;
this.id = id;
}
}
public class Main {
public static void main(String[] args) {
Vector<Buffer> vec = new Vector<Buffer>();
getName = G.sIn.ReadInputLine();
getID = G.sIn.ReadInt();
// create an instance of Buffer class
Buffer buff = new Buffer(getName, getID);
// add the instance of Buffer class in vec
vec.add(buff);
}
}
要访问或设置类的private
数据成员的值,您需要定义Getter and Setter Buffer
类中的函数。
关于java - 如何将两个变量保存到一个 vector 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62466044/