我在java中编写了一个程序来返回一个值表。后来随着这个程序的功能增长,我发现我想在未返回的方法中访问一个变量,但我不确定最好的方式去实现它。我知道你不能返回多个值,但是如何在不进行大的修改的情况下访问这个变量呢? 这里是我的代码的简化版本:java方法的返回值
public class Reader {
public String[][] fluidigmReader(String cllmp) throws IOException {
//read in a file
while ((inpt = br.readLine()) != null) {
if (!inpt.equals("Calls")) {
continue;
}
break;
}
br.readLine();
inpt = br.readLine();
//set up parse parse parameters and parse
prse = inpt.split(dlmcma, -1);
while ((inpt = br.readLine()) != null) {
buffed.add(inpt);
}
int lncnt = 0;
String tbl[][] = new String[buffed.size()][rssnps.size()];
for (int s = 0; s < buffed.size(); s++) {
prse = buffed.get(s).split(dlmcma);
//turns out I want this smpls ArrayList elsewhere
smpls.add(prse[1]);
//making the table to search through
for (int m = 0; m < prse.length; m++) {
tbl[lncnt][m] = prse[m];
}
lncnt++;
}
//but I return just the tbl here
return tbl;
}
谁能推荐的方式,使用及样品,在另一个类不还?这可能是当你使用get/set类型的设置? 对不起,如果这似乎是一个明显的问题,我仍然是新来的模块化编程世界
你从不在任何地方定义'smpls',所以它不是方法的一部分。这已经是一个类变量。 – corsiKa
另外,你有没有对元音宣战?他们不是一件坏事! – corsiKa
@corsiKa看来我有。我试图打破自己的习惯是一种古老的习惯,但有时他们只是以这种方式溜掉。 – Stephopolis