我有10的矢量容量和5的大小。我试图通过在方法padVectorWithZeores()
中填充其余的空格,现在向量看起来像像这样:用零长度的向量填充空的空格
2 -1 4 5 3
我想要得到的是
2 -1 4 5 3 0 0 0 0 0
我试图做一个for循环,但我不断收到
2 -1 4 5 3 0
其不填充零
import java.util.*;
public class VectOfLongs {
private long[] theNumbers;
private int size, capacity;
public void padVectorWithZeroes() {
for(int i=size; i<capacity; i++){
theNumbers[capacity]=0;
}
size++;
}
public static void yourMainMethod() {
VectOfLongs v = new VectOfLongs();
v.insert(2); v.insert(-1); v.insert(-2);
v.insert(4); v.insert(5); v.insert(3);
System.out.println(v);
System.out.println(v.howManyOddAndPositive());
v.padVectorWithZeroes();
System.out.println(v);
}
public VectOfLongs() {
size = 0;
capacity = 5;
theNumbers = new long[capacity];
}
public void insert(long l) {
if (size==capacity) {
long[] tmp = new long[capacity+5];
capacity += 5;
for (int i=0; i<size; i++)
tmp[i] = theNumbers[i];
theNumbers = tmp;
}
theNumbers[size++] = l;
}
是'yourMainMethod'你的主要方法是什么?为什么没有这样定义? 'howManyOffAndPositive()'定义在哪里?这些都是愚蠢的问题,可能与您的问题无关,但如果人们不得不花费大量时间试图调试代码,甚至无法编译代码,那么您应该花更多时间来制定问题。 – jedwards 2014-09-23 11:04:39