XSSFWorkbook源码普通方法解析-全网最全

普通方法使用方式:对象.方法名

XSSFWorkbook源码普通方法解析-全网最全_第1张图片

源码中,只有private和protecte时对象不能调用,只能调用public方法

因为XSSFWorkbook类继承POIXMLDocument类,也继承了POIXMLDocument类下方的普通方法,可以全部使用

需求:需要读取Excel

方法一:据sheet名字得到sheet下标

XSSFWorkbook源码普通方法解析-全网最全_第2张图片

//传入sheet名字,返回sheet下标,入参是String name
int sheetIndex = workbook.getSheetIndex("case");
System.out.println("据sheet名字得到sheet下标" + sheetIndex);

方法二: 据下标得到sheet名字使用getSheetName(int sheetIx)

XSSFWorkbook源码普通方法解析-全网最全_第3张图片

//getSheetName(int sheetIx)传入sheet下标,返回sheet名字
String sheetName = workbook.getSheetName(1);
System.out.println("据下标得到sheet名字=" + sheetName);

方法三:传入sheet名称,返回整个sheet

步骤:wb.get后返回值是类,返回的是整个sheet,得到的对象不能打印,XSSFWorkbook源码普通方法解析-全网最全_第4张图片

XSSFWorkbook源码普通方法解析-全网最全_第5张图片

//据sheet名称得到sheet下标
XSSFSheet helpSheet = workbook.getSheet("help");入参是一个名字,得到helpSheet
int helpTx = workbook.getSheetIndex(helpSheet);//helpSheet作为入参得到数据类型为int的对象helpTx
System.out.println("help的下标=" + helpTx); 打印helpTx对象,不能直接打helpSheet

方法四:据sheet下标得到对象即整个sheet,同理,入参名称换为下标

//据sheet下标得到对象即整个sheet
XSSFSheet sheetAt = workbook.getSheetAt(2);
System.out.println("据sheet下标得到对象" + sheetAt);

方法五:入参是sheet类sheet对象

接口不能实例化,接口可以当父类,需要进行向上转型

父类 父类对象 = new 子类();

Sheet sheet  = new 子类();

Sheet sheet  = 子类对象;

Sheet sheet = new XSSFSheet();得到 XSSFSheet();子类
new XSSFSheet() =子类对象,这里XSSFSheet类的子类对象在上述方法三时就得到了helpSheet

因此最终优化后为:

Sheet sheet = helpSheet;//Sheet sheet  = 子类对象;套用的公式
int xssfSheet0Index = wb.getSheetIndex(sheet);//Sheet sheet,最终getSheetIndex(sheet)方法得到的对象xssfSheet0Index

总结

普通方法:

public int getSheetIndex(String name);传入sheet名字,返回sheet下标
public String getSheetName(int sheetIx);传入sheet下标,返回sheet名字
public XSSFSheet getSheetAt(int index);传入sheet下标,返回XSSFSheet类
public int getSheetIndex(String name);传入sheet名字,返回XSSFSheet类
public int getSheetIndex(Sheet sheet);传入sheet对象,返回sheet下标

 

你可能感兴趣的:(java,开发语言,测试用例,jmeter,测试工具,模块测试)