集合类
1.Collection接口(List接口和Set接口包含了Collection接口中的所有方法)
方法:add(),remove(),isEmpty(),hasNext(),iterator(),size()
其中,遍历List和Set均可使用iterator迭代器的方法(或for循环),Iterator的next()方法返回的是object
2.List集合:包括List接口和List接口的所有实现类,List集合中的元素允许重复,各元素的顺序就是对象插入的顺序
List接口的方法:get(int index),set(int index,Object obj)
List的实现类:ArrayList<>(),LinkedList<>() 如:List<E> list=new ArrayList<>();其中E代表合法的java数据类型;
3.Set集合:包括Set接口和Set接口的所有实现类,Set集合中的元素不允许重复,各元素没有特定的顺序
Set的实现类:HashSet<>(),TreeSet<>()
其中,TreeSet类新增方法有:first(),last(),comparator(),headSet(E toElement),subSet(E fromElement,E toElement),tailElement(E fromElement)
4.Map集合:没有继承Collection接口,包括Map接口和Map的实现类,遍历Map仍可使用迭代器,提供的是key到value的映射,不能包含相同的key,每个key只能映射到一个value
Map接口的方法:put(K key,V value),containskey(Objext key),containsValue(Object value),get(Object key),keyset(),values()
Map的实现类:HashMap<>(),TreeMap<>()




流:一组有序的数据序列,包括输入流和输出流
1.输入流
(1)InputStream类:用于处理字节,包括ByteArrayInput,StringBufferInputStream,FileInputStream,InputStream
方法:read(),read(byte[] b),mark(int readlimit),reset(),skip(long n),markSupported(),close()
(2)Reader类:用于处理字符,包括CharArrayReader,BufferReader,InputStreamReader,StringReader
2.输出流
(1)OutputStream类:用于处理字节,包括ByteArrayOutputStream,FileOutoutStream,OutputStream
方法:write(int b),write(byte[] b),write(byte[]b,int off,int len),flush(),close()
(2)Writer类:用于处理字符,包括BufferWriter,OutputStreamWriter,StringWriter
3.File类:唯一代表磁盘本身的对象
方法:Flie(String pathname),createNewFile(),delete(),getName(),canRead(),canWrite(),exists(),length(),getAbsolutePath(),getParent(),isFile(),isDirectory(),isHidden()
4.文件输入/输出流
(1)FileInputStream和FlieOutputStream类(用byte),FileReader和FileWriter类(用string或char)
如:File file=new File("word.txt");
FileOutputStream out=new FileOutputStream(file)
byte buy[]="爱上喝东方树叶的你".getBytes();
out.write(buy);
out.close();
FileInputStream in=new FileInputStream(file);
byte byt[]=new byte[1024];
int len=in.read(byt);
int.close();
(2)带缓存的输入/输出流:对所有InputStream类进行带缓冲区的包装易达到性能的优化
<1>BufferedInputStream和BufferOutputStream类(字节)
流程:文件->OnputStream->BufferedOnputStream->目的地,其中BufferedOutputStream与OutputStream输出信息完全一样,只不过BufferedOutputStream有flush()方法将缓存区的数据强制输出完
构造方法:BufferedInputStream(InputStream in)或BufferedInputStream(InputStream in,int size),BufferedOutputStream(OutputStream out)或BufferedOutputStream(OutputStream out,int size)
<2>BufferedReader与BufferedWriter类:以行位单位进行输入/输出(字符)
流程:字符数据->BufferedWriter->OutputStreamWriter->OutputStream->文件
方法:read(),readline(),write(String s,int off,int len),flush(),newLine()
如:String content[]={"好久不见","最近好吗","常联系"};
File file=new File("word.txt");
FileWriter fw=new FileWriter(file);
BufferedWriter bufw=new BufferedWriter(fw);
for(int k=0;k<content.length;k++)
{
bufw.write(content[k]);
bufw.newLine();
}
bufw.close();
fw.close();
FileReader fr= new FileReader(file);
BufferedReader bufr=new BufferedReader(fr);
String s=null;
int i=0;
while((s=bufr.readLine())!=null)
{
i++;
System.out.println("第"+i+"行"+s);
}
bufr.close();
fr,close();
5.数据输入/输出流
(1)DataInputStream(InputStream in)
(2)DataOutputStream(OutputStream out)方法:writeBytes(String s),writeChars(String s),writeUTF(String s),其中只有writeUTF()方法向目标文件中写入字符串的长度准确都会不乱码
6.ZIP压缩输入/输出流
(1)压缩文件:ZipOutputStream(OutputStream out)
方法:putNextEntry(ZipEntry e),write(byte[]b,int off,int len),finish(),setComment(String comment)
(2)解压缩:ZipInputStream(InputStream in)
方法:read(byte[]b,int off,int len),avalible(),closeEntry(),skip(long n),getNextEntry(),createZipEntry(String name)集合类
1.Collection接口(List接口和Set接口包含了Collection接口中的所有方法)
方法:add(),remove(),isEmpty(),hasNext(),iterator(),size()

其中,遍历List和Set均可使用iterator迭代器的方法(或for循环),Iterator的next()方法返回的是object


2.List集合:包括List接口和List接口的所有实现类,List集合中的元素允许重复,各元素的顺序就是对象插入的顺序

List接口的方法:get(int index),set(int index,Object obj)

List的实现类:ArrayList<>(),LinkedList<>()   如:List<E> list=new ArrayList<>();其中E代表合法的java数据类型;

3.Set集合:包括Set接口和Set接口的所有实现类,Set集合中的元素不允许重复,各元素没有特定的顺序

Set的实现类:HashSet<>(),TreeSet<>()

其中,TreeSet类新增方法有:first(),last(),comparator(),headSet(E toElement),subSet(E fromElement,E toElement),tailElement(E fromElement)

4.Map集合:没有继承Collection接口,包括Map接口和Map的实现类,遍历Map仍可使用迭代器,提供的是key到value的映射,不能包含相同的key,每个key只能映射到一个value

Map接口的方法:put(K key,V value),containskey(Objext key),containsValue(Object value),get(Object key),keyset(),values()

Map的实现类:HashMap<>(),TreeMap<>()





流:一组有序的数据序列,包括输入流和输出流

1.输入流

(1)InputStream类:用于处理字节,包括ByteArrayInput,StringBufferInputStream,FileInputStream,InputStream

方法:read(),read(byte[] b),mark(int readlimit),reset(),skip(long n),markSupported(),close()

(2)Reader类:用于处理字符,包括CharArrayReader,BufferReader,InputStreamReader,StringReader

2.输出流

(1)OutputStream类:用于处理字节,包括ByteArrayOutputStream,FileOutoutStream,OutputStream

方法:write(int b),write(byte[] b),write(byte[]b,int off,int len),flush(),close()

(2)Writer类:用于处理字符,包括BufferWriter,OutputStreamWriter,StringWriter

3.File类:唯一代表磁盘本身的对象

方法:Flie(String pathname),createNewFile(),delete(),getName(),canRead(),canWrite(),exists(),length(),getAbsolutePath(),getParent(),isFile(),isDirectory(),isHidden()

4.文件输入/输出流

(1)FileInputStream和FlieOutputStream类(用byte),FileReader和FileWriter类(用string或char)

如:File file=new File("word.txt");
     FileOutputStream out=new FileOutputStream(file)
     byte buy[]="爱上喝东方树叶的你".getBytes();
     out.write(buy);
     out.close();
     FileInputStream in=new FileInputStream(file);
     byte byt[]=new byte[1024];
     int len=in.read(byt);
     int.close();

(2)带缓存的输入/输出流:对所有InputStream类进行带缓冲区的包装易达到性能的优化

<1>BufferedInputStream和BufferOutputStream类(字节)

流程:文件->OnputStream->BufferedOnputStream->目的地,其中BufferedOutputStream与OutputStream输出信息完全一样,只不过BufferedOutputStream有flush()方法将缓存区的数据强制输出完

构造方法:BufferedInputStream(InputStream in)或BufferedInputStream(InputStream in,int size),BufferedOutputStream(OutputStream out)或BufferedOutputStream(OutputStream out,int size)

<2>BufferedReader与BufferedWriter类:以行位单位进行输入/输出(字符)

流程:字符数据->BufferedWriter->OutputStreamWriter->OutputStream->文件

方法:read(),readline(),write(String s,int off,int len),flush(),newLine()

如:String content[]={"好久不见","最近好吗","常联系"};
     File file=new File("word.txt");
     FileWriter fw=new FileWriter(file);
     BufferedWriter bufw=new BufferedWriter(fw);
     for(int k=0;k<content.length;k++)
     {
       bufw.write(content[k]);
       bufw.newLine();
     }
     bufw.close();
     fw.close();
     FileReader fr= new FileReader(file);
     BufferedReader bufr=new BufferedReader(fr);
     String s=null;
     int i=0;
     while((s=bufr.readLine())!=null)
     {
        i++;
        System.out.println("第"+i+"行"+s);
      }
      bufr.close();
      fr,close();

5.数据输入/输出流

(1)DataInputStream(InputStream in)

(2)DataOutputStream(OutputStream out)方法:writeBytes(String s),writeChars(String s),writeUTF(String s),其中只有writeUTF()方法向目标文件中写入字符串的长度准确都会不乱码

6.ZIP压缩输入/输出流

(1)压缩文件:ZipOutputStream(OutputStream out)

方法:putNextEntry(ZipEntry e),write(byte[]b,int off,int len),finish(),setComment(String comment)

(2)解压缩:ZipInputStream(InputStream in)

方法:read(byte[]b,int off,int len),avalible(),closeEntry(),skip(long n),getNextEntry(),createZipEntry(String name)