从一个类存储到另一个类中

时间:2013-05-21 17:54:31

标签: java arrays class methods

我必须制作一个程序,为每个部分使用不同的类。对于第一类:Quest1,我计算了人口中的增长率。第二类:Quest2,我必须将增长存储到一个数组中,即我有问题,我将如何去做?

public class Quest1 {

public double pop, rate;
public int day;

public void setPop(double population)
{
    pop = population;
}
public double getPOP()
{
    return pop;
}
public void setRate(double rates)
{
    rate = rates;
}
public double getRate()
{
    return rate;
}
public void setDay(int days)
{
    day = days;
}
public double getDays()
{
    return day;
}

public double getNew(double pop, int day, double rate)
{
    double popul, population = 0;
    for (double i = 0; i < day; i++)
    {
        popul = pop + (pop * rate/100);
        population = day*popul;
    }
    return population;
}

}

public class Main {


public static void main(String[] args) throws IOException{
    Scanner kd = new Scanner(System.in);
    Quest1 a = new Quest1();
    Quest2 b = new Quest2();

    double tempPop, tempRate; int tempDay;


    System.out.println("Enter Population: ");
    tempPop = kd.nextDouble();
    a.setPop(tempPop);

    System.out.println("Enter Days: ");
    tempDay = kd.nextInt();
    a.setDay(tempDay);


    System.out.println("Enter Rate: ");
    tempRate = kd.nextDouble();
    a.setRate(tempRate);


    b.storeArray();
}



public class Quest2 {


Quest1 a = new Quest1();

public void storeArray(){
    double scores [] = new double[(int) a.getDays()];
    for(int i = 0; i < a.getDays(); i++)
    {
        scores[i] = a.getNew(a.getPOP(), i+1, a.getRate()); 
        System.out.println(scores[i]);
    }
    return;
}

2 个答案:

答案 0 :(得分:1)

我认为你需要将quest1对象传递给quest2类。

b.storeArray(a);

您正在quest2.so中创建Quest1的新对象,该对象不会计算增长。 在quest2类中修改。

public void storeArray(Quest1 a){..}

希望你这么问。

答案 1 :(得分:0)

如果你想将一个数组从一个类传递到另一个类,你可以使用下面的一个servlet。

request.setAttribute("name", arrayListName);
rd = request.getRequestDispatcher(classname);
rd.forward(request,response);

然后用

在另一个班级上学习
ArrayList namelist=(ArrayList)request.getAttribute("name");

这就是你追求的目标吗?

否则下面会有另一个类似的问题。

Passing an array from class A to class B