如何将public static void main中的变量调用到另一个类?

时间:2015-08-14 19:07:27

标签: java

我真的很茫然,我一直在寻找。我得到了这段代码

public class Main
{
public static void main(String args[])
{
  int target = (int) (Math.random() * 1000);

    System.out.println("The number is " + target);

}

}

他们希望我创建一个类Finder,它接受目标并在for语句中使用它。我的问题是我无法弄清楚如何从这段代码中拉出目标。我是学生,我们正在使用的书没有帮助。 我试过用

调用它
numberSearch = Main.target
numberSearch = Main.main.target
numberSearch = Main.main() 

和其他许多人。

2 个答案:

答案 0 :(得分:1)

你说"创建一个获取目标"的类Finder,这意味着Finder类应该在构造函数或执行查找的方法上接受目标值作为参数。

// Using constructor
public class Finder {
    private int target;
    public Finder(int target) {
        this.target = target;
    }
    public void find() {
        // perform find of 'this.target' here
    }
}

// On find method
public class Finder {
    public void find(int target) {
        // perform find of 'target' here
    }
}

答案 1 :(得分:1)

首先,我们可以使用标签

订购您的代码
public class Main
{

    public static void main(String args[])
    {   
        int target = (int) (Math.random() * 1000);

        System.out.println("The number is " + target);
    }

}

现在你要做的是创建一个你说你需要在学校使用的课程的对象(Finder)。让我们为这个对象设置标识符“obj”。

public class Main
{

    public static void main(String args[])
    {   
        Finder obj = new Finder();
        int target = (int) (Math.random() * 1000);

        System.out.println("The number is " + target);
    }

}

现在我们已经完成了这个,你必须在类Finder中创建一个接受整数的方法(因此它可以接受你调用target的变量,因为它本身就是int)。像这样在for循环中使用变量target的方法的例子是:

public void forLoopMethod(int target)
{
    //Some sort of for loop involving the int target goes here:
    for()
    {

    }
}

然后在您的类中调用名为Main

的方法forLoopMethod
public class Main
{

    public static void main(String args[])
    {   
        Finder obj = new Finder();
        int target = (int) (Math.random() * 1000);

        obj.forLoopMethod(target);
        System.out.println("The number is " + target);
    }

}