静态循环?之前进行计算

时间:2011-10-29 18:36:29

标签: java

我对如何做到这一点感到很失落。我正在尝试使用需要作为全局变量的值执行计算。但要成为全球性的,它必须是静态的。我需要for循环也是静态的,所以它可以在数组中执行计算,但我不记得如何做到这一点。 最后一行代码是由于“无法找到符号”错误导致我卡住的地方。我试图找到一种方法将yVal0引入此方法,以便我可以执行计算

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class RegressionGUI  extends JFrame
    implements ActionListener {
private JLabel VariableLabel = new JLabel("Select one independent Variable");

3 个答案:

答案 0 :(得分:2)

同样,我怀疑你需要使用静态的东西,快速查看你的(格式不佳的)代码表明这仍然是如此。为什么不改为创建一些数值变量类字段而不是方法本地或构造函数本地,这样你就可以在类的任何非静态方法中使用它们?

如,

public class RegressionGUI extends JFrame implements ActionListener {
   private JLabel VariableLabel = new JLabel("Select one independent Variable");
   private JButton X1btn = new JButton("Number of Bathrooms (X1)");
   private JButton X2btn = new JButton("Area of the site (X2)");
   private JButton X3btn = new JButton("Size of living space (X3)");
   private JButton X4btn = new JButton("Number of Garages (X4)");
   private JButton X5btn = new JButton("Number of Rooms (X5)");
   private JButton X6btn = new JButton("Number of bedrooms (X6)");
   private JButton X7btn = new JButton("Age (X7)");
   private JTextArea textArea = new JTextArea();
   private JScrollPane scrollPane = new JScrollPane(textArea);

   // **** added these guys
   private double[] xValues = new double[4];
   private double[] yValues = new double[4];

答案 1 :(得分:1)

由于格式非常糟糕,你的代码难以理解(因此我没有阅读它),但是如果你想在运行时计算静态变量,你最好的选择就是这样:

public static final int MY_VAR = computeValue();

private static int computeValue() {
    //for loop here
}

答案 2 :(得分:0)

您正在寻找static initialization block。这是一个代码块,它在第一次初始化类的对象之前执行,或者在第一次执行类的静态成员之前执行。