日期:2014-05-20  浏览次数:20650 次

个人学习j2se笔记

1.String,StringBuilder和StringBuffer

????String:一旦创建,就永远无法更改,理解String是不可变化的对象,改变值就创建新对象(个人理解)

??? StringBuilder和StringBuffer处理不断变换的输入流使用,可对同一对象反复修改,StringBuilder不是同步的(不是线程安全的),但是只要条件允许,就用StringBuilder,它比StringBuffer更快,而且stringBuffer的API它都能有,最重要的方法就是append(),toString()

?

?

2.文件导航和I/O

???? 1.File?newFile = new File();注意这句话只是创建FILE实例,并没创建文件,文件不存在时用createNewFile()创建新文件

?????2.FileReader用于读取字符文件,它的read()方法相当低级,只允许读取单个字符,整个字符流或固定数量的字符,用到它时一般由较高级的对象包装(如bufferedReader类,这些对象能提高性能,一次能读取更多的数据,并能将该数数据保存在缓冲区内,当需要下一个或下一行数据时,就从缓冲区检索它,还有非常方便的readLine()读取行字符方法,并能提供方便的使用数据方式)

?????3.FileWriter用于写入字符文件,提供的write()方法运行将字符或字符串写入文件,同样,使用它时候经常由较高级的writer对象bufferedWriter或printWriter包装,这里介绍一下bufferedWriter类,它是用来使低级的类(比如FileWriter)更高效的使用,与fileWriter相比,它能一次将更多的数据写入文件,还提供一个newLine()方法,它能自动创建分行符;

???? 4.PrintWriter:利用最新的构造函数(如利用File或String构建PrintWriter对象),会发现以前用FileWriter或bufferedWriter包装的writer的地方,现在可以用PrintWriter替代了,例如它的format()方法,printf()和append()使它更灵活,强大;

????

??? 处理文件和目录

??? File file = new File("foo")这句话只是表示一个文件对象,如果foo不存在,则不会创建实际的文件,如果foo确实存在,则新的File对象会引用现有的文件,总之这句话永远不会创建新文件

??? 创建新文件有以下两中方式:

????????????????????????????????????????? 1:> File file =?new File?("foo")

???????????????????????????????????????????????? file.createNewFIle();

??????????????????????????????????????????2:>创建一个FileWriter、一个PrintWriter或者一个FileOutPutStaeam,每当创建这些类的实例时,都会自动创建新文件,除非该文件已存在

???

???

?????

?????

??? ???