比较缓冲流
demo1:缓冲流在中间
demo2:没有缓冲流
demo3:缓冲流在最外层
//有buffer的比没有buffer的快
//buffer在中间层比放在外层更快
//安行或者按块操作比按字节或字符流操作更快(object流比字符字节流更快)
//缓冲流要结合其它流在可以使用,在流的基础上对流的功能进行了增强。
public class BufferChoose {
@Test
public void demo1() throws IOException{
long t1=System.currentTimeMillis();
DataInputStream in=new DataInputStream(new BufferedInputStream(new FileInputStream("test1.txt")));
String str="";
while((str=in.readLine())!=null){
// System.out.println(str);
}
long t2=System.currentTimeMillis();
System.out.println(t2-t1);
}
@Test
public void demo2() throws IOException{
long t1=System.currentTimeMillis();
DataInputStream in=new DataInputStream(new FileInputStream("test1.txt"));
String str="";
while((str=in.readLine())!=null){
// System.out.println(str);
}
long t2=System.currentTimeMillis();
System.out.println(t2-t1);
}
@Test
public void demo3() throws IOException{
long t1 = System.currentTimeMillis();
BufferedInputStream in = new BufferedInputStream(
new DataInputStream(
new FileInputStream("test1.txt")));
byte buf[] = new byte[68];
while( in.available()>0 ){
int len = in.read(buf);
String str=new String(buf,0,len);
// System.out.println(str);;
}
long t2 = System.currentTimeMillis();
System.out.println("3:"+ (t2-t1) );
}
}