我正在创建消费者和生产者曲线,每个曲线都是自己的类。消费者有一系列点,生产者有一个点数组列表。我需要创建一个创建“图形”(consumerCurve和producerCurve)的方法。在这些方法中,它需要检查无效参数(即没有负数),实例化数组/列表,然后实例化这些点/将它们存储在正确的槽中。以下是我对consumerCurve:如何绘制数组和曲线列表的曲线?
public class ConsumerCurve {
private Point[] myConsumerCurve;
public void Curve()
{
myConsumerCurve = new Point[10];
for(int x=0; x<10; x++)
{
myConsumerCurve[x] = new Point(x,x);
}
}
public ConsumerCurve(int np, double m, double b, int dx)
{
//*1)check for invalid parameters
Point[] myConsumerCurve = new Point [np];
if (np < 0) {
throw new IllegalArgumentException("'np' must not be negative");
}
//2) Instantiate array using size n
for(int i=0; i<np; i++)
{
int x = i*dx;
double y = m*x+b;
myConsumerCurve[i] = new Point (x,y);
}
//3*)instantiate points store in correct slots
}
我的第二部分,但我真的不知道如何来检查invaid PARAMATERS和右侧插槽得到点。另外,它会是一样的数组列表?这可能是因为我已经看过这种代码太久而错过了。
您已经在检查'np <0',只需以相同的方式检查其他参数即可。如果论证无效,会发生什么? 'np =(Integer)null;'不起作用 - 你不能将'null'赋值给一个原始类型'int'。在这种情况下,你应该抛出'IllegalArgumentException'。将这些点存储在正确的插槽中意味着什么?你已经创建了数组'myCurve'及其所有元素,也许你希望将它作为实例字段而不是局部变量? – Cinnam
目前在插槽中没有任何东西,因为在另一个类中,点正在创建,然后存储在插槽中以创建曲线。本质上,我需要说的是,积分按照顺序存储(so(0,0)(1,1)等)在插槽 – retrogirl19
插槽究竟是什么以及它们在哪里声明?您已经在此方法中创建了点,并且它们目前按'x'排序。你只是想把它们存储在别处吗? – Cinnam