问题分析:文档解析的效率也就是---》执行指令时所花费的时间
时间花费:时间计数使用的java的什么方法比较: 1、system.c
urrentTimeMillis() 获取系统的毫秒时间 2、system.
nanoTime()获取系统的纳秒时间
结论:1、在运行这指令效率的时候,使用纳秒时间会出现时间差,而使用毫秒会出现时间差
为0;
2、setcelltype的效率会比 if判断再读值的方式要低
例子:
目的分析:获取excel表格中cell数据的效率
标准时间的输出:年月日
Calendar
cal
= Calendar.getInstance();
Date
date
=
cal
.getTime();
String
t1
=
new
SimpleDateFormat(
"yyyy/MM/dd-HH:mm:ss:SSS"
).format(
date
);
System.
out
.println(
"开始1:"
+
new
SimpleDateFormat(
"yyyy/MM/dd-HH:mm:ss:SSS"
).format(
date
));
第一种先setCell的格式:
纳秒时间获取
long
d1
=System.nanoTime();
row
.getCell(2).setCellType(Cell.
CELL_TYPE_STRING
);
stock
.setBegin_trade_date(Integer.parseInt(
row
.getCell(2).getStringCellValue()));
System.
out
.println(
"开始1耗时:"
+(System.nanoTime()-
d1
));
第二种是通过if语句判断他是什么格式,在以某种方式获取数据
System.
out
.println(
"开始2:"
+
new
SimpleDateFormat(
"yyyy/MM/dd-HH:mm:ss:SSS"
).format(
date
));
long
d2
=System.nanoTime();
if
(Cell.
CELL_TYPE_STRING
==
rowLine
.getCell(2).getCellType()){
stock
.setStock_code(
row
.getCell(2).getStringCellValue());
}
else
if
(Cell.
CELL_TYPE_STRING
==
rowLine
.getCell(2).getCellType()){
stock
.setStock_code(
row
.getCell(2).getStringCellValue());
}
else
{
System.
out
.print(
"--输出错误229--"
);
}
System.
out
.println(
"开始2耗时:"
+(System.nanoTime()-
d2
));
System.
out
.println(
"结束2:"
+
new
SimpleDateFormat(
"yyyy/MM/dd-HH:mm:ss:SSS"
).format(
date
));
输出结果: