请Java高手帮我解释一下这段代码,谢谢了

publicMyVector(){size=0;capacity=5;theNumbers=newint[capacity];}publicvoidinsert(intn... public MyVector() {
size = 0;
capacity = 5;
theNumbers = new int[capacity];
}
public void insert(int num) {
if (size==capacity) {
int[] tmp = new int[capacity+5];
capacity += 5;
for (int i=0; i<size; i++)
tmp[i] = theNumbers[i];
theNumbers = tmp;
}
theNumbers[size++] = num;
}
public String toString() {
String str = new String(" ");
for (int i=0; i<size; i++)
str += theNumbers[i]+" ";
return str;
}
这是3个方法,但我有点看不懂,请解释一下吧
展开
 我来答
corruptsatan
2010-04-19 · TA获得超过1108个赞
知道小有建树答主
回答量:473
采纳率:0%
帮助的人:620万
展开全部
public MyVector() { //是个构造器
size = 0; //将属性size赋值0
capacity = 5; //将属性capacity赋值5
theNumbers = new int[capacity]; //将属性theNumbers定义为长度为5的整型数组
}

------------------------
------------------------
public void insert(int num) { //向theNumbers数组插入一个整型数
if (size==capacity) { //如果size==capacity
int[] tmp = new int[capacity+5]; //定义一个长度为capacity+5的临时数组
capacity += 5; //capacity = capacity + 5
for (int i=0; i<size; i++) //循环原来数组,将值放入到tmp数组中
tmp[i] = theNumbers[i];

theNumbers = tmp; //将长度+5并且值不变的数组tmp赋值给theNumbers
}
theNumbers[size++] = num; //将参数num放入到数组中

-------------------------------
-------------------------------
public String toString() { //该类的toString方法,将该类用字符串形式表示
String str = new String(" "); //定义一个空字符串。 注:这里用StringBuffer效率会更高。
for (int i=0; i<size; i++) //循环数组theNumbers,将每个值放入到字符串中
str += theNumbers[i]+" ";

return str; //返回字符串
}

}

//你的这个类大概就是整型动态数组的意思,初始长度为5,如果长度超过5了,就增加5个长度,继续往里添加值
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式