Передача значений между методами - PullRequest
0 голосов
/ 01 июня 2011

У меня есть метод, где я читаю значение в переменную

public void displayFromExcel(String xlsPath) {
. 
. 
. 
pole[i] = cell.getNumericCellValue();
.
.
pole1[j] = richTextString;

Затем у меня есть метод, где я строю String, используя StringBuilder

    private void getHenkValues (StringBuilder sb) { 
    sb.append("<ColumnValue name=\"hen_allockey\">" + pole1[j] + "</ColumnValue\">\r\n"
            +"<ColumnValue name=\"hen_percentage\">"+ pole[i] + "</ColumnValue\">\r\n");
}

Тогда у меня естьметод, в котором я записываю его в файл:

protected void jobRun() throws Exception {
sb = new StringBuilder();
getHenkValues(sb);
String epilog1 = sb.toString();

FileOutputStream fos = new FileOutputStream("c:\\test\\osem.xml");
OutputStreamWriter osw = new OutputStreamWriter(fos, Charset.forName("UTF-8"));
osw.write(epilog1);
osw.flush();
osw.close();  
}

А в методе main я вызываю метод jobrun.

Как получить значения из pole[i], pole1[j] из метода displayFromExcel в метод getHenkValues?

Ответы [ 2 ]

2 голосов
/ 01 июня 2011

Ваш displayFromExcel метод должен возвращать их (используя пользовательский класс или коллекцию какого-либо рода, возможно, массив).

Ваш getHenkValues также должен принимать эти значения, вы можете попробоватьчто-то вроде:

getHenkValues(StringBuilder sb, Object value1, Object value2)

или что-то, что имеет отношение к вашему делу.

0 голосов
/ 01 июня 2011

Вы можете сделать поля и поля 1 частными для класса, в котором расположены displayFromExcel, getHenkValues ​​и jobRun:

private Object[] pole;
private String[] pole1;

Затем вы можете присвоить значения этим массивам в одном методе и получить доступ к ним в другом.

...