第三周

comparable接口:比较两个对象“大小”(顺序),必须实现compareTo();
注意事项:comparable的实现类是包含八大包装类型及引用类型,所以一般的自定义类,不选择使用它;
容器与数组之间的区别:
容器的类型可以是任意甚至对象都可以,而数组是单一;Collections类针对List接口排序(升序),而Arrays针对数组排序(升
序);
字节流:FileInputStream,FileOutputStream;
常用方法:read(),close(),write();(回去看API里面的重载方法)
注意事项:read()用-1表示已经读末尾了;如果是一个字节一个字节读的情况,必须注意有没有中文,否则会有                 乱码的出现;(byte[])如果想让文件里面的信息一个一个读出来,记得要转换(char)b;如果是字节数    组类型,记得把它转换为STRING类型:new String(b);


字符流:FileReader,FileWriter;
常用方法:read(),close(),writer();同上;
注意事项:先写后读(理解);作用于文本的输出;


处理流:
字节处理流(BufferedInputStream,BufferedOutputStream);
注意事项:字节对字节(套接的流是同种类型),其它写法跟上面一样;
字符处理流(BufferedReader,BufferedWriter);


注意事项:字符对字符(套接的流是同种类型);它两种写法;
例子:
第一种:
BufferedReader br=new BufferedReader(new FileReader("d:/18.txt"));
BufferedWriter bw=new BufferedWriter(naew FileWriter("d:/19.txt"));
String s=br.readLine();
while(s!=null){
    System.out.println(s);
    bw.write(s);
}记得关流;
第二种:
BufferedReader br=new BufferedReader(new FileReader("d:/18.txt"));
BufferedWriter bw=new BufferedWriter(naew FileWriter("d:/19.txt"));
int b=br.read();
while(b!=-1){
    System.out.println((char)b);
    bw.write();
    b=br.read();
}记得关流;
如果是以字节数组类型来定义,每次读取的字节数,是你给定的;(byte[] b=new byte[10])10个字节;

思考:先读后写、先写后读之间的区别和联系;

Data流:DataOutputStream,DataInputStream;(只有字节流,没有字符流)
常用方法:writeUTF(),writeInt()...write(int b),write(byte[] b);读的方法一样;
注意事项:以后调用方法时,必须看清形参的类型;
功能:数据上传,下载(聊天软件)


printWriter流:(printStream字节流)
常用方法:print(Object o);write();
注意事项:InputStreamReader(System.in):往控制台上输入信息,它是一个字节通往字符的桥梁;
功能:可以任意在控制台上输入信息并保存在指定的文本文档上;(部分被Data流替代)


Object流:
序列化:把JAVA对象转换成字节的形式进行流入;writeObject()
反序列化:把字节序列转换成对象;readObject();
注意事项:用Object流来实现;
注意事项:序列化接口什么时候用:实体类,GUI,对象的读取等
常用方法:writeObject(),readObject();读跟写必须一一对应;


过滤器:(FileNameFilter)步骤
第一步:实现上面的接口,重写accept(File f,String name);
第二步:定义一个带字符串参数的构造方法(传递过滤文件的名称),
第三步:指定你要过滤的文件夹路径,获取到list(FileNameFilter f),字符串数组类型;
第四步:遍历字符串数组里面的文件,并输出;


递归:
定义:定义自身的同时,调用自身的引用;
条件:
第一,要有调用自身的方法;
第二,要有终止的条件;
特点:优点,对于小型算法,可以选择;缺点:大型的项目,不易采用,(它会占内存空间)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值