如何在for循环中传递字符串值到java中的二维数组


import java.io.*;
import java.util.*;
import jxl.*;
import jxl.read.biff.BiffException;
public class ExcelIO {
    // A factory method which takes in an excel file and reads in the contents.
  public static void readData(String args[]) throws BiffException, IOException{
      Workbook wb=  Workbook.getWorkbook(new File("E:\Java\java ramesh trainer notes\Selenium\ReadData.xlsx"));
      Sheet sheet= wb.getSheet(0);
      String[][] col;
      //get username and password from excel
      for(int i=0;i<sheet.getRows();i++){
          for(int j=0; j<sheet.getColumns();j++){
             Cell cell= sheet.getCell(i+1,j+1);
             String str= cell.getContents();
             col= str.toString();
          }
      }

  }
}

还需要初始化数组。col = new String[x][y]

如果你需要找到数组的大小,你可以运行一个初始循环并记录数组的大小,或者在数组已满时重新调整数组的大小。

另外,正如其他人指出的,你将需要。[j] = str;

jxl的getContents方法返回一个字符串,所以toString()方法应该是不必要的。

当这样迭代时,需要将每个索引处的col 的值设置为字符串,而不是col本身。col是一个二维数组,而不是字符串。因此,您需要将col[i][j]处的字符串更改为str.toString()。在一个相关的主题中,您可以将col的每一列设置为1-D数组,就像在col[i] = new String[length]中一样,因为col[i]是一个字符串数组,等等。

另外,值得注意的是,您必须初始化col以具有高度和宽度,因为数组不能更改大小或添加单元格。

相关内容

  • 没有找到相关文章

最新更新