ArrayList<>与BufferedReader读取
开发工具与关键技术:java,IO流,集合
作者:张启翔
撰写时间:2019-04-16
下面我们使用java语言简单的了解一下集合与IO流是如何结合使用。
集合这里介绍到的是ArrayList集合以及缓冲流的读取文件BufferedReader。
BufferedReader格式:
1、 导包(快捷键Ctrl+shift+o)
2、 定义一个集合那么就创建ArrayList类
3、 创建FileReader对象
4、 将FileReader对象包装成为缓冲BufferedReader
5、 声明变量接收将要在循环中产生的数据
6、 使用循环遍历,循环中将数据使用add方法添加到集合中。
7、 这时调用read()方法将集合的数据写进文件中
8、 使用close()方法关闭流
例子:将文件中的字符串读取到集合中,并且每行存储一个字符串
//导包
import java.util.ArrayList;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class BufferedReaderDemo {
//开始
public static void main(String[] args) throws IOException {
//创建集合
ArrayList<String> list = new ArrayList<>();
//声明一个FileReader的同时声明了一个BufferedReader,然后将FileReader作为参数传进
BufferedReader buf = new BufferedReader(new FileReader("introduce.txt"));
//声明变量接收数据
String the;
//使用while循环遍历读取文件
//readLine()是BufferedReader特定的方法,读取整一行,
//因为传进来的buf是地址值,所以要将,地址值获取的每一行赋值给the
//然后判断the是否等于null,因为是String所以是null。如果是int就是-1
while ((the = buf.readLine())!=null) {
//这里尝试输出一下buf,结果就是地址值
//如果像这样直接把BufferedReader输出就会输出一个地址值,而不是地址里面文件的数据,
//通俗点就是说你找到你朋友的家里,可以别没有找到人,你要进屋子里面才能看到你的朋友
System.out.println(buf);
//每次循环就将读取的数据添加到集合中
list.add(the);
}
//结束循环后,分隔一下上面输出的地址值
System.out.println("============");
//每次使用IO流都需要关闭一下,要不然会一直在后台运行,直到关闭JVM
buf.close();
//最后查看一下集合是否有接收到。
for (int i = 0; i < list.size(); i++) {
//get(index) get是查询小括号的是索引
System.out.println(list.get(i));
}
}
效果图: