java如何将两个变量保存到一个向量中?
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中并继续
现在,我不知道如何正确地实现
# 1 楼答案
一个
vector
就像一个有序的列表,类似于arrayList
。在您的实现中,它没有name
或id
属性。是你的Buffer
类拥有它们。你把它声明为一个缓冲向量。所以这更正确:如果
Buffer
类有一个构造函数,那么创建它的速度会更快,而不需要buf
变量和vec.add(new Buffer(getID, getName));
# 2 楼答案
您需要存储缓冲区的实例,而不是它们的变量:
使用您的输入,修改版本:
不过,我建议大家仔细阅读一下命名惯例
# 3 楼答案
vec
本身不是Buffer
类的实例,因此无法访问vec
上Buffer
类的数据成员或方法vec
是一个可以包含Buffer
类实例的列表但是,在类中包含
public
数据成员不是一个好的实践。Buffer
类的所有数据成员都应该是private
,并且应该使用constructor
初始化要访问或设置类的
private
数据成员的值,需要在Buffer
类中定义Getter and Setter函数