我试图在arraylist中的最后一个值之前插入一个值。这是一般性的。
public class ArrayList
{
private Object[] array;
private int capacity;
private int size;
private final int InitialCap = 10;
//constructor of list
public ArrayList()
{
array = new Object[InitialCap];
capacity - InitialCap;
size = 0;
}
}
public static void main(String[] args)
{
int value = 5;
array.add(array.size()-2, value);
}
答案 0 :(得分:1)
此代码存在几个问题。首先,你从未定义容量,但试图在构造函数中使用它。这是不可能的。如果你的意思是另一个类应该这样做,你需要另一个构造函数来做到这一点,或者至少需要setter方法和一个在初始化时不需要容量设置的构造函数。您还从静态方法调用数组,而不是静态方法。如果你修复这些,你会得到这样的东西:
public class ArrayList {
private static final int InitialCap = 10;
private static Object[] array = new Object[InitialCap];
public static void main(String[] args)
{
int value = 5;
array[InitialCap-2] = value;
System.out.println(array);
}
}
答案 1 :(得分:0)
您未在此代码中使用ArrayList。你使用的是一个简单的数组,它们是不同的东西。但是,如果您使用的是ArrayList,则可以这样做:
list.add(list.size()-2, objectName);
另外,你的for循环只运行一次。我从5开始,循环运行,我降低到4,循环实现我太低并停止循环。