JAVA第十一部分.docx
- 文档编号:23000659
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:8
- 大小:16.84KB
JAVA第十一部分.docx
《JAVA第十一部分.docx》由会员分享,可在线阅读,更多相关《JAVA第十一部分.docx(8页珍藏版)》请在冰豆网上搜索。
JAVA第十一部分
回顾:
集合:
所有的类的接口都是在java.util包中
有两个接口:
Collection(存储单值的最大接口)Map(存储键值对的接口)
集合:
动态的对象数组,长度是可扩展的.
集合是一种非常优化的框架,没有集合写不出好的程序
接口和类:
都可以以泛型的方式方法进行操作
泛型:
类和接口指定一个模版类型,直到实例化的时候才指定操作类型
List
Collection:
ListSet
List:
可以存放重复的内容
Set:
不可以存放重复的内容
List:
ArrayListVector
add()addAll()
//get(index)
//foreach进行遍历
Set:
HashSetTreeSet
add()
//foreach
//迭代器Iterator
Map:
HashMapHashtable
Key---value
Key不可以重复,Set集合
Value可以重复,Collection集合
put(Stringkey,Stringvalue)
根据key得到value:
get(Object key)
得到所有的key:
Set
得到所有的value:
Collection
得到长度:
size()
集合中别的类:
API
//初始化构造方法
//属性:
private----getter/Setter
//有返回的方法
一个类:
可以创建多个对象
今天:
IO
1.IO:
input&output(操作文件),java.io包中
2.唯一表示也文件本身有关的类:
File
(1)创建一个文件
Vv
publicclassFileDemo1{
publicstaticvoidmain(String[]args){
//1.文件的目录D:
//aa.txt
Filef=newFile("D:
\\day12\\test.txt");
//2.创建文件
try{
f.createNewFile();
}catch(IOExceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}
(2)常用文件的方法
publicbooleandelete()
publicbooleanexists()
创建一个目录:
publicbooleanmkdir()
Filefile=newFile("D:
\\aa");
file.mkdir();
3.对文件进行读写:
【字节流和字符流】
(1)流:
在程序中所有数据都是以流的方式进行传输和操作的.程序需要输入数据输入流,输出输出流(所有以字节流)
(2)在java.io包中两大类:
字节流和字符流
字节流:
输出OutputStream输入InputStream
字符流:
输出Writer输入Reader
(3)步骤
打开读写关闭
字节流:
主要操作的是byte数组
字符流:
主要操作的是char数组
(4)字节流的读写实例
例1:
写信息
publicstaticvoidmain(String[]args)throwsException{
Filef=newFile("D:
\\day12\\test.txt");
//打开文件
OutputStreamout=null;
out=newFileOutputStream(f);
//写
Stringinfo="helloworldaaaa";
byte[]b=info.getBytes();
out.write(b);
//关闭
out.close();
}
追加:
OutputStreamout=null;
out=newFileOutputStream(f,true);
追加换行:
\r\n
例2:
读信息
publicstaticvoidmain(String[]args)throwsException{
Filef=newFile("D:
\\day12\\test.txt");
InputStreaminput=null;
input=newFileInputStream(f);
//读
byte[]b=newbyte[1024];
input.read(b);//
Stringinfo=newString(b);
input.close();
System.out.println(info);
}
数据的长度
publicstaticvoidmain(String[]args)throwsException{
Filef=newFile("D:
\\day12\\test.txt");
InputStreaminput=null;
input=newFileInputStream(f);
//读
byte[]b=newbyte[1024];
intlen=input.read(b);//
Stringinfo=newString(b,0,len);
input.close();
System.out.println(info);
}
实际上应用将读出的数据的长度,指定给字节数组read()
(5)字符流的实例(ReaderWriter)
例1:
写的操作
publicstaticvoidmain(String[]args)throwsException{
//
Filef=newFile("D:
\\day12\\char.txt");
Writerout=null;
out=newFileWriter(f,true);
Stringinfo="helloworld\r\n";
char[]ch=info.toCharArray();
out.write(ch);
out.close();
}
//写出字符串
publicstaticvoidmain(String[]args)throwsException{
//
Filef=newFile("D:
\\day12\\char.txt");
Writerout=null;
out=newFileWriter(f,true);
Stringinfo="helloworld你好\r\n";
//char[]ch=info.toCharArray();
//out.write(ch);
out.write(info);
out.close();
}
例2:
读的操作
publicstaticvoidmain(String[]args)throwsException{
Filef=newFile("D:
\\day12\\char.txt");
Readerreader=null;
reader=newFileReader(f);
char[]ch=newchar[1024];
intlen=reader.read(ch);
reader.close();
System.out.println(newString(ch,0,len));
}
(6)字节流和字符流的区别:
字节流可以不close()也可以写出信息,而字符流必须close()或者flush()才可以写出信息。
字节流操作是文件的本身,而字符流有缓存的(内存),然后再写到文件里。
字节流---文件
字符流--缓存--文件
对于开发人员而言:
字符流更方便
对于计算机:
字节流更快
(7)字节字符转化流OutputStreamWriter:
Writer子类,接收的参数字节流
InputStreamReader:
Reader子类,接收的参数字节流
例1:
写实例
publicstaticvoidmain(String[]args)throwsException{
Filef=newFile("D:
\\day12\\file.txt");
OutputStreamWriterout=null;
out=newOutputStreamWriter(newFileOutputStream(f,true));
out.write("这个太好用了!
\r\n");
out.flush();
}
例2:
读实例
publicstaticvoidmain(String[]args)throwsIOException{
Filef=newFile("D:
\\day12\\file.txt");
InputStreamReaderinput=null;
input=newInputStreamReader(newFileInputStream(f));
char[]ch=newchar[1024];
intlen=input.read(ch);
input.close();
System.out.println(newString(ch,0,len));
}
(8)常用字节字符流
System.out.print()
System.out.println();
读:
Scanner
例1:
PrintStrem
publicstaticvoidmain(String[]args)throwsFileNotFoundException{
Filef=newFile("D:
\\file.txt");
PrintStreampw=newPrintStream(f);
pw.print(true);
pw.println("我去");
pw.println("你好");
pw.close();
}
例2:
PrintWriter(上机测)
例3:
BufferedReader
Filef=newFile("D:
\\file.txt");
BufferedReaderbr=newBufferedReader(newInputStreamReader(
newFileInputStream(f)));
Stringstr="";
//循环的条件?
?
?
str+=br.readLine();
br.close();
System.out.println(str);
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 第十一 部分