Java 从单击的操作按钮获取变量数组

Java 从单击的操作按钮获取变量数组,java,arrays,variables,Java,Arrays,Variables,我被编码绊倒了,我需要你的帮助 首先,我在一个类下面有一个数组变量 我从excel中获取值,并将其放入nodename数组中,如下所示 以下类Readexcel也在ConfigGenerator类下 class ReadExcel { private String inputFile; public void setInputFile(String inputFile) { this.inputFile = inputFile; } publi

我被编码绊倒了,我需要你的帮助

首先,我在一个类下面有一个数组变量

我从excel中获取值,并将其放入nodename数组中,如下所示


以下类Readexcel也在ConfigGenerator类下

class ReadExcel {
    private String inputFile;

    public void setInputFile(String inputFile) {
        this.inputFile = inputFile;
    }

    public void read() throws IOException {
        File inputWorkbook = new File(inputFile);
        Workbook nodes;
        try {
            nodes = Workbook.getWorkbook(inputWorkbook);
            // Get the first sheet
            Sheet nodessheet = nodes.getSheet(1);
            String[] nodename = new String[nodessheet.getRows()];
            for (int i = 1; i < nodessheet.getRows(); i++) {
                int j = 0;
                Cell x1a = nodessheet.getCell(0, i);
                nodename[j] = x1a.getContents();
                j++;
                // System.out.println(nodename[j]);
            }
        } catch (BiffException e) {
            // e.printStackTrace();
        }
    }
}
我添加问号的部分是我最近两天的问题,我正在尝试,但无法从该数组中获取值。 首先我需要得到数组的长度,然后是值:) 非常感谢您事先的帮助


好的,我编辑了这个问题,添加了整个部分的代码。

也许您的意思是希望使用
nodename.length
获取数组长度,但是我对您的代码有两个问题:

首先将
节点名
作为
操作
的本地数组访问,然后将其作为类
ConfigGenerator
静态变量访问,这意味着您正在访问两个不同的数组


此外,您还可以将
节点名
数组作为
静态
变量访问(尽管即使
.class
也不是必需的),但您提到它是一个“数组变量”,这意味着您首先需要创建class
ConfigGenerator
的新实例,初始化数组
节点名
,然后你可以在其他类中使用它

首先,在Java中检索数组长度的方法是

nodename.length
不是

但您也可以使用缩短的语法循环特定数组中的所有元素:

for (Object obj : array) {
   System.out.println(obj);
}
在您的情况下,它将是:

for (Object obj : ConfigGenerator.nodename) { //replace Object with your datatype
   System.out.println(obj);
}

请把你读excel文件的整个课堂都贴出来,还有GenerateAtonPerformed方法所在的类请注意,我的按钮位于另一个名为ConfigGenerator的类下,其中是创建
ReadExcel
ConfigGenerator
的代码。ReadExcel也在ConfigGenerator下,通过编辑添加了更多代码。问题是您我们在问吗?是的,名为nodename的数组充满了字符串变量。你是对的,我想我是想作为一个静态变量来访问它,但我真的不知道应该在哪里修改才能访问它。我应该在后面使用Object或string吗?因为你
nodename
数组的类型是
string[]
您可以使用
字符串
而不是
对象
for (Object obj : array) {
   System.out.println(obj);
}
for (Object obj : ConfigGenerator.nodename) { //replace Object with your datatype
   System.out.println(obj);
}