1.什么是节点流?常见的有哪些;什么是处理流?常见的有哪些

  1. 节点流是:具有实际传输数据的读写功能即可以对数据源直接操作的流.例如:FileReader(File file) 参数里面就直接封装数据源,它就是节点流 常见的节点流有:FileOutputStreamFilInputStreamFileReaderFileWriterByteArrayInputStreamByteArrayOutStreamCharArrayReader CharArrayWriterPipedInputStreamPipedOutStream、(管道流)PipedReader、(管道流)PipedWriter.
  2. 处理流:在节点流的基础之上进行了一个包装增强流的读写能力.例如:BufferedReader(Reader in)参数里面是一个流.常见的处理流有:BufferedInputStreamBufferedOutputStreamBufferedReaderBufferedWriter、(转换流)InputStreamReader、(转换流)OutputStreamWriterObjectInputStreamObjectOutputStreamFilterInputStreamFilterOutputStreamFilterReaderFilterWriterPrintStreamPrintWriterPushbackInputStreamPushbackReaderDataInputStreamDataOutputStream

2.什么是同步,什么是异步?

  1. 同步:即用户提交请求到返回结果期间,不能干任何事,只能等待请求处理完毕,才能进行操作.
  2. 同步:即用户提交申请后不需要等待处理完毕后才能操作,而是可以在服务器处理期间,进行操作发送其他请求,上一个请求会在服务器处理完成后,通过状态、通知和回调来通知用户.

3.给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

代码:

  1. package Weekly_Task.Five;
  2. import java.util.ArrayList;
  3. import java.util.Scanner;
  4. /**
  5. * @auther Devil(丁杨维)
  6. * @create 2021-11-15-8:43
  7. */
  8. public class Demo01 {
  9. public static void main(String[] args) {
  10. ArrayList<Integer> arrayList = new ArrayList<>();
  11. Scanner input = new Scanner(System.in);
  12. int n;//数组的长度
  13. int flag;//目标值
  14. System.out.print("请输入数组的大小: ");
  15. n = input.nextInt();
  16. System.out.print("请输入数组元素: ");
  17. for (int i = 0; i < n; i++) {
  18. arrayList.add(input.nextInt());
  19. }
  20. System.out.print("请输入目标值: ");
  21. flag = input.nextInt();
  22. for (int i = 0; i < arrayList.size(); i++) {
  23. if(arrayList.get(i)==flag) {
  24. System.out.println("输出: "+i);
  25. break;
  26. }
  27. if(arrayList.get(i)>flag){
  28. System.out.println("输出: "+i);
  29. break;
  30. }
  31. }
  32. }
  33. }
  1. 示例 1:
  2. 输入: nums = [1,3,5,6], target = 5
  3. 输出: 2
  4. 示例 2:
  5. 输入: nums = [1,3,5,6], target = 2
  6. 输出: 1

控制台:
image.png

4.将文本 qwe.txt中的“一百”改成“一千”

提示:(先读再写)

qwe.txt内容:

  1. 昨天买彩票中了一百万昨天买彩票中了一百万昨天买彩票中了一百万
  2. 昨天买彩票中了一百万昨天买彩票中了一百万昨天买彩票中了一百万昨天买彩票中了一百万昨天买彩票中了一百万
  3. 昨天买彩票中了一百万昨天买彩票中了一百万昨天买彩票中了一百万
  4. 昨天买彩票中了一百万昨天买彩票中了一百万昨天买彩票中了一百万昨天买彩票中了一百万
  5. 昨天买彩票中了一百万昨天买彩票中了一百万

代码:

  1. package Weekly_Task.Five;
  2. import java.io.*;
  3. import java.util.ArrayList;
  4. /**
  5. * @auther Devil(丁杨维)
  6. * @create 2021-11-15-8:58
  7. */
  8. public class Demo02 {
  9. public static void main(String[] args) throws Exception {
  10. BufferedReader br = new BufferedReader(new FileReader("src\\qwe.txt"));
  11. ArrayList<String> list = new ArrayList<>();
  12. String str;
  13. while((str = br.readLine())!=null){
  14. list.add(str);
  15. }
  16. BufferedWriter bw = new BufferedWriter(new FileWriter("src\\qwe.txt"));
  17. for (int i = 0; i < list.size(); i++) {
  18. bw.write(list.get(i).replaceAll("一百", "一千"));
  19. bw.newLine();
  20. }
  21. bw.flush();
  22. bw.close();
  23. br.close();
  24. }
  25. }

文件qwe.txt:

  1. 昨天买彩票中了一千万昨天买彩票中了一千万昨天买彩票中了一千万
  2. 昨天买彩票中了一千万昨天买彩票中了一千万昨天买彩票中了一千万昨天买彩票中了一千万昨天买彩票中了一千万
  3. 昨天买彩票中了一千万昨天买彩票中了一千万昨天买彩票中了一千万
  4. 昨天买彩票中了一千万昨天买彩票中了一千万昨天买彩票中了一千万昨天买彩票中了一千万
  5. 昨天买彩票中了一千万昨天买彩票中了一千万

5.客户端向服务端发送“dog”;服务端将本地D:\images\dog.png发送给客户端,客户端将该图片存放到D:\img\dog.png。

服务端:

  1. package Weekly_Task.Five;
  2. import java.io.File;
  3. import java.io.FileOutputStream;
  4. import java.io.IOException;
  5. import java.io.InputStream;
  6. import java.net.ServerSocket;
  7. import java.net.Socket;
  8. /**
  9. * @auther Devil(丁杨维)
  10. * @create 2021-11-15-9:21
  11. */
  12. public class Server {
  13. public static void main(String[] args) throws IOException {
  14. ServerSocket serverSocket = new ServerSocket(9999);
  15. Socket socket = serverSocket.accept();
  16. File file = new File("D:\\img");
  17. if(!file.exists()){
  18. file.mkdir();
  19. }
  20. byte[] bytes = new byte[1024];
  21. int len;
  22. InputStream is = socket.getInputStream();
  23. FileOutputStream os = new FileOutputStream("D:\\img\\dog.png");
  24. while((len=is.read(bytes))!=-1){
  25. os.write(bytes,0,len);
  26. }
  27. os.close();
  28. socket.close();
  29. serverSocket.close();
  30. }
  31. }

客户端:

  1. package Weekly_Task.Five;
  2. import java.io.File;
  3. import java.io.FileInputStream;
  4. import java.io.OutputStream;
  5. import java.net.InetAddress;
  6. import java.net.Socket;
  7. import java.net.UnknownHostException;
  8. /**
  9. * @auther Devil(丁杨维)
  10. * @create 2021-11-15-9:20
  11. */
  12. public class Client {
  13. public static void main(String[] args) throws Exception {
  14. Socket socket = new Socket(InetAddress.getByName("127.0.0.1"),9999);
  15. FileInputStream is = new FileInputStream("D:\\images\\dog.png");
  16. byte[] bytes = new byte[(int)new File("D:\\images\\dog.png").length()];
  17. int len;
  18. len = is.read(bytes);
  19. OutputStream os = socket.getOutputStream();
  20. os.write(bytes,0,len);
  21. socket.shutdownOutput();
  22. is.close();
  23. socket.close();
  24. }
  25. }

文件:
image.png
image.png
—-end—