的
我是新的数组列表,我不知道什么是错的,怎么做来解决它。这是一个数组的工作"消费者曲线"。但"生产者曲线"是一个数组列表。我不知道该怎么解决。请帮助。
ConsumerCurve:
public ConsumerCurve(int np, double m, double b, int dx)
{
myConsumerCurve = new Point [np];
for(int i=0; i<np; i++)
{
int x = i*dx;
double y = m*x+b;
if(y<0) throw new IllegalArgumentException();
myConsumerCurve[i] = new Point (x,y);
}
}
ProducerCurve:
public ProducerCurve(int np, double m, double b, int dx)
{
for(int i=0; i<np; i++)
{
int x = i*dx;
double y = m*x+b;
if(y<0) throw new IllegalArgumentException();
ArrayList<Point> myProducerCurve = new Point (x,y);
}
}
同时,我在这里得到一个错误,说索引不能解析为一个变量
public ProducerCurve()
{
Point x;
myProducerCurve.add(x);
myProducerCurve.add(index,x);
}
最后,我如何添加一个点到数组列表,首先搜索,看看点是否已经退出,然后冒泡排序?
add ():
public void add(Point p)
{
myProducerCurve.add(p);
}
试用版:
public int searchPoint(Point p)
{
for(int index=0; index< myProducerCurve.size(); index++ )
{
myProducerCurve.equals(p);
}
return -1;
}
错误在这一行:
ArrayList<Point> myProducerCurve = new Point (x,y);
应该是
ArrayList<Point> myProducerCurve = new ArrayList<Point>();
myProducerCurve.add(new Point(x, y));
这是由于Java的类型系统。您尝试将myProducerCurve
实例化为新的Point
,但实际上该变量被构建为保存Points
ArrayList
的数据。